mysql innodb 行锁 insert

CREATE TABLE IF NOT EXISTS `t_enum` (
  `F_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键id',
  `F_type` varchar(32) NOT NULL COMMENT '类型',
  `F_kid` varchar(64) NOT NULL COMMENT '数字键',
  `F_kstr` varchar(64) NOT NULL COMMENT '字母键',
  `F_value` varchar(128) NOT NULL COMMENT '值',
  `F_comment` varchar(128) NOT NULL COMMENT '备注',
  `F_enable` tinyint(4) NOT NULL DEFAULT '0' COMMENT '0:正常 -1:删除',
  `F_op_user` varchar(128) NOT NULL COMMENT '备注',
  `F_create_time` datetime NOT NULL COMMENT '创建时间',
  `F_modify_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  PRIMARY KEY (`F_id`),
  UNIQUE KEY `uk_type_kid` (`F_type`,`F_kid`),
  UNIQUE KEY `uk_type_str` (`F_type`,`F_kstr`),
  KEY `idx_kid` (`F_kid`),
  KEY `idx_str` (`F_kstr`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COMMENT='枚举常量表' AUTO_INCREMENT=13 ;

会话1

set autocommit=0

INSERT INTO `bfb_db_kuajing`.`t_enum` (`F_id`, `F_type`, `F_kid`, `F_kstr`, `F_value`, `F_comment`, `F_enable`, `F_op_user`, `F_create_time`, `F_modify_time`) VALUES (NULL, '7', '7', '', '', '', '0', '', '', CURRENT_TIMESTAMP);  

insert 一个语句 //当前会话木有commit或者rollback之前 其他会话是可以插入的,若当前会话回滚了,后续插入语句不会使用当前已经废弃的自增ID)


会话2

set autocommit=0

INSERT INTO `bfb_db_kuajing`.`t_enum` (`F_id`, `F_type`, `F_kid`, `F_kstr`, `F_value`, `F_comment`, `F_enable`, `F_op_user`, `F_create_time`, `F_modify_time`) VALUES (NULL, '7', '7', '', '', '', '0', '', '', CURRENT_TIMESTAMP);   (由于和会话1 的唯一索引 冲突 当前会一直阻塞直到会话1 结束


INSERT INTO `bfb_db_kuajing`.`t_enum` (`F_id`, `F_type`, `F_kid`, `F_kstr`, `F_value`, `F_comment`, `F_enable`, `F_op_user`, `F_create_time`, `F_modify_time`) VALUES (NULL, '8', '8, '', '', '', '0', '', '', CURRENT_TIMESTAMP);   如果是这这个插入语句 则会消耗新的自增ID F_ID



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值