事务不回滚的例子,请高手指教

javaflyers javaflyers 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
在自动提交事务模式下,在查询分析器中输入如下 SQL语句:

CREATE TABLE TestBatch (Cola INT PRIMARY KEY, Colb CHAR(3))
/*在这个事务内部,有个运行时错误,就是往主键中插入相同的值,但是事务不会回滚*/
begin tran
INSERT INTO TestBatch VALUES (1, 'aaa')
INSERT INTO TestBatch VALUES (2, 'bbb')
INSERT INTO TestBatch VALUES (1, 'ccc') /* 主键相同错误 */
commit
SELECT * FROM TestBatch
/* Returns rows 1 and 2 */

运行以后出现如下信息:

(所影响的行数为 1 行)


(所影响的行数为 1 行)

服务器: 消息 2627,级别 14,状态 1,行 1
违反了 PRIMARY KEY 约束 'PK__TestBatch__22AA2996'。不能在对象 'TestBatch' 中插入重复键。
语句已终止。

(所影响的行数为 2 行)


这种错误 ,事务为什么不回滚??
...全文

相关推荐

评论 19
收藏 已收藏
分享
返回顶部
javaflyers
应用实例 27,579 成员 68,540 内容