mysql数据库的行锁for update

在mysql数据库中行锁for update怎么利用,对某些数据加了行锁,其他用户和事务就不克不及再加锁,必需解锁今后才能加锁,就是数据只能一个事务操作,其他事务不克不及点窜只能读取。我写的经验对你进修mysql有帮忙的话,给我投票、点赞或者保藏!

1怎么获得过程返回多个记实集

1数据库的共享锁

1查询列转当作字符串

东西/原料

  • mysql、sqlyog

方式/步调

  1. 1

    登录mysql,在test数据库中新建一个表:

    CREATE TABLE `shoufei` (  `id` int(11) NOT NULL AUTO_INCREMENT,  `shijian` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,  `xiangmu` varchar(20) NOT NULL,  `jiage` float NOT NULL,  `shuliang` int(11) NOT NULL,  `jine` float DEFAULT NULL,  PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8

  2. 2

    在表增添一些数据。

    insert into `shoufei` (`id`, `shijian`, `xiangmu`, `jiage`, `shuliang`, `jine`) values('1','2019-01-28 11:15:52','银翘解毒丸','2','10','20');

    insert into `shoufei` (`id`, `shijian`, `xiangmu`, `jiage`, `shuliang`, `jine`) values('2','2019-01-28 11:15:59','甘草片','15','2','30');

    insert into `shoufei` (`id`, `shijian`, `xiangmu`, `jiage`, `shuliang`, `jine`) values('3','2019-01-28 11:16:04','阿莫西林','20','2','40');

    insert into `shoufei` (`id`, `shijian`, `xiangmu`, `jiage`, `shuliang`, `jine`) values('4','2019-01-28 11:16:08','午时茶','8','1','8');

    insert into `shoufei` (`id`, `shijian`, `xiangmu`, `jiage`, `shuliang`, `jine`) values('5','2019-01-28 11:16:12','银翘解毒丸','2','10','20');

  3. 3

    在mysql中新建两个用户abc_1、abc_2,两个用户登录mysql。

  4. 4

    abc_1用户对id=2的数据增添行锁:

    SELECT * FROM shoufei WHERE id=2 FOR UPDATE;

  5. 5

    abc_1用户对id=2的数据点窜jiage=20:

    UPDATE shoufei SET jiage=20 WHERE id=2;

    abc_1用户没有提交使命,只能本身看到成果。

  6. 6

    abc_2用户查询id=2的数据,此中jiage没有点窜因为abc_1用户没有提交使命:

    SELECT * FROM shoufei WHERE id=2;

  7. 7

    abc_2用户对id=2的数据增添行锁(没有当作功,超时,abc_1用户没有解锁):

    SELECT * FROM shoufei WHERE id=2 FOR  UPDATE;

  8. 8

    abc_1用户提交使命commit,把id=2的数据jiage=20,解锁数据。

  9. 9

    abc_2用户,查询id=2的数据而且加锁(解锁当作功,查询abc_1用户点窜的数据jiage=20):

    SELECT * FROM shoufei WHERE id=2 FOR  UPDATE;

  • 发表于 2019-02-23 20:01
  • 阅读 ( 957 )
  • 分类:其他类型

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
admin
admin

0 篇文章

作家榜 »

  1. xiaonan123 189 文章
  2. 汤依妹儿 97 文章
  3. luogf229 46 文章
  4. jy02406749 45 文章
  5. 小凡 34 文章
  6. Daisy萌 32 文章
  7. 我的QQ3117863681 24 文章
  8. 华志健 23 文章

联系我们:uytrv@hotmail.com 问答工具