- 博客(5)
- 收藏
- 关注
原创 银行转账的死锁问题
1.概述:银行转账问题(A给B转账1000元,涉及到两个用户的现金余额的事务)1、转账业务是一种事务,所以需要保证数据的安全性。注意是一个原子性操作如果A用户余额大于要转出金额,则扣除转出人的余额。如果A用户余额小于要转出金额,则无法扣除转出人的余额,停止转账提醒转出人转账失败。在转账中途如果出现错误(A账户转出扣除成功,B账户增加失败/A给B转账同时B给A转账,获取锁的顺序相反导致死锁),需要将数据进行回滚。2、对于一个转账操作,需要2把锁,一个锁锁住转出账户的余额,一把锁锁住转入账户的
2020-05-30 12:01:29
2896
转载 SQL 的 group by和聚合函数
为什么不能够select * from Table group by id,为什么一定不能是*,而只能是某一个列或者某个列的聚合函数,group by 多个字段可以怎么去很好的理解呢?先来看下表1,表名为test:表一 testid name number 1 aa 2 2 aa 3 3 bb 4 4 bb 5 5 cc 6 6 dd 7 7 ee 7 8 bb..
2020-05-30 11:41:20
861
原创 简单的git安装与操作
git与github的区别 是一个版本管理工具,是可以在你电脑不联网的情下,只在本地使用的一个版本管理工具,其作用就是可以让你更好的管理你的程序,比如你原来提交过的内容,以后虽然修改了,但是通过git这个工具,可以把你原来提交的内容重现出来,这样对于你后来才意识到的一些错误的更改,可以进行还原。 github是一个网站,每个人可以建立自己的网上仓库每次代码可以提交到仓库中。同时这也...
2018-11-29 17:50:32
138
原创 《提问的智慧》有感
以下是我读完书的体会:①.在以后的学习中要习惯观察~独立思考~并乐于参加问题的解决。②.遇到问题尝试通过谷歌百度等搜索引擎寻求答案,如果在努力思考后还是不会就要及时问人。③.不要对问题加以猜测要动手做,在别人指导时要认真听④.要用清晰的语句,正确的语法书写,不要犯简单的错误⑤.不要将问题弄得太复杂,努力简化问题更容易得到他人的回复⑥出现问题时,按时间先后罗列出问题的症状...
2018-10-06 22:14:37
192
原创 对大整数的处理---计算13的100次方
#include<stdio.h>#define N 1000//尽量定义大的空间存大整数 int main(void){ int a[N],i,j,x,cp,s; a[N-1]=1;//先定义最后一位数为1 s=N-2; for(i=0;i<100;i++){//100次13想乘 cp=0;//cp清0为了...
2018-08-02 21:44:49
472
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人