社区
MS-SQL Server
帖子详情
碰到这样一个问题!大家帮我看看!谢谢
zhnzzy
2007-04-19 05:35:43
别人问我一个问题,说当要往主表和子表插入一条记录的时候主表里面的更新成功了,子表里面失败了,这时候怎么解决,我不会大家帮我看看!
ps:
我如果写了begin
update t1 set....
update t2 set....
end
这样,会发生只更新了t1,而t2没更新的情况吗?我以为只要插入的数据类型都符合就不会失败了呀!
...全文
248
8
打赏
收藏
碰到这样一个问题!大家帮我看看!谢谢
别人问我一个问题,说当要往主表和子表插入一条记录的时候主表里面的更新成功了,子表里面失败了,这时候怎么解决,我不会大家帮我看看! ps: 我如果写了begin update t1 set.... update t2 set.... end 这样,会发生只更新了t1,而t2没更新的情况吗?我以为只要插入的数据类型都符合就不会失败了呀!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lwl0606
2007-04-20
打赏
举报
回复
学习了,顶
bootupnow
2007-04-20
打赏
举报
回复
这种情况十分危险,可能破坏数据库的数据完整性,重要的数据最好使用事务控制。
declare iErrCode int
set iErrCode = -1 -- 用于捕获@@error的值
begin tran
update t1 set....
set iErrCode = @@error -- 成功 iErrCode = 0,否则iErrCode != 0
if @@iErrCode = 0
begin
update t2 set....
set iErrCode = @@error
end
.......
if @@iErrCode = 0
begin
commit tran
end
esle
begin
rollback tran
end
y_dong119
2007-04-20
打赏
举报
回复
//可执行事务
declare @@iErrCode int
set @@iErrCode = -1 -- 用于捕获@@error的值
begin tran
insert tb1(dasfdf,fasf) values(1909,2)
set @@iErrCode = @@error -- 成功 iErrCode = 0,否则iErrCode != 0
if @@iErrCode = 0
begin
insert tb1(dasfdf,fasf) values(22,23)
set @@iErrCode = @@error
end
if @@iErrCode = 0
begin
commit tran
end
else
begin
rollback tran
end
zg182
2007-04-20
打赏
举报
回复
BEGIN TRAN
BEGIN TRY
UPDATE t1 SET...
UPDATE t2 SET...
COMMIT TRANSACTION
END TRY
BEGIN CATCH
IF XACT_STATE()<>0
ROLLBACK TRANSACTION
END CATCH
第二种方式
zg182
2007-04-20
打赏
举报
回复
DECLARE @ERROR INT
SET @ERROR = 0
BEGIN TRAN
UPDATE t1 SET...
SET @ERROR=@@ERROR
IF @ERROR <> 0
GOTO ERR
UPDATE t2 SET...
SET @ERROR=@@ERROR
IF @ERROR <> 0
GOTO ERR
ERR:
IF @ERROR= 0
COMMIT TRANSACTION ;
ELSE
ROLLBACK TRANSACTION
WDBOY0000
2007-04-19
打赏
举报
回复
IF @@error <> 0
BEGIN
COMMIT TRANSACTION
END
ELSE
BEGIN
ROLLBACK TRANSACTION
END
zzxiaoma
2007-04-19
打赏
举报
回复
从程序里面控制
setautocommit()
update
update
setcommit()
gjylgmh
2007-04-19
打赏
举报
回复
用事务回滚
一个
Socket包装类的
问题
在以前编写SOCKET包装类的时候,
碰到
了
一个
不解的
问题
,在CSDN论坛上也多亏了各位大虾的
帮
忙,从而得到了解决。今天重新翻看到,觉得这是
一个
有价值的
问题
,所以整理发布在这里。
问题
是这样的:请问,对socket进行...
pdf.js 使用实例以及实现过程中
碰到
的
问题
pdf.js主要包含两个库文件,
一个
pdf.js和
一个
pdf.worker.js,,
一个
负责API解析,
一个
负责核心解析 项目中使用pdf.js实现pdf在线预览 的功能,浏览过不少的技术帖,感觉技术点都比较零散,花了点时间总结了下我在使用...
EXCEL表单元格内特定内容的提取
我们公司培训部的一位同事,她在用excel处理培训资料的时候
碰到
了
一个
这样的
问题
,她需要将将H列每个单元格里的培训课程名称给取出来,然后放到C列对应的单元格里。这种
问题
,大家首先想到是怎么解决呢?不少人是...
雷军:陪女儿我选择去滑雪,因为90%的时间都在缆车上,就有足够的时间交流...
非常荣幸有这么
一个
机会,作为清华附小的家长来参加这样的家校学习共同体的活动。我的孩子是清华附小二年级的一名学生。这两年下来,我深深地感受到两年前的选择是多么地正确!我相信两年以后你们跟我的感受会是一样...
2012最新骗术!不是一般的街头骗术!安全第一 ,女生一定要看,男生看完转告你的女性朋友!
某个女孩在星期六的下午 2 点多,
一个
人乘70 路至四川路,当中我在和我老公通电话的时候发觉有人拍了下我的肩膀,刚开始我以为是遇到认识的人和我打招呼的,后来一看旁边是40 多岁的男人。我并不认识,我想可能是这...
MS-SQL Server
34,873
社区成员
254,640
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章