BEGIN TRAN
insert into DB_B.dbo.Table1 select * from DB_A.dbo.Table1 where age>30IF @@error<>0
Rollback tran delete from DB_A.dbo.Table1 where age>30
COMMIT TRAN
insert into DB_B.dbo.Table1 select * from DB_A.dbo.Table1 where age>30IF @@error<>0
Rollback tran delete from DB_A.dbo.Table1 where age>30
COMMIT TRAN
解决方案 »
- 如何将列的值写入一行中~~~
- 一个存储过程问题,查了半天了,也没查出来,大哥们帮忙给看看
- SQLServer中有没有类似Oracal里面merge into 这样的语句,以实现“数据已经登录,则update,数据没有登陆,则insert”这样的功能?在线等
- 谁能帮我看看SQL的问题,这个库存怎么写?
- 郁闷,SQLServer服务启动不了!
- 求教 这个sql如何写哇。。。。
- SQL Server2000一个简单的导入问题问题,高分!
- 含连续三以上个相同字符的记录的选取
- 各位大哥,请问中文数据库(sql server)支持日文字段么?
- 如何在select的时候不考虑表是否被锁?
- 视图和临时表的区别?
- 如何用C#编写把excel表数据内容导入已建好结构的数据库中,急!!!!请各位大哥帮忙!
INSERT DB_B.dbo.Table1 SELECT * FROM DB_A.dbo.Table1 WHERE age > 30
IF @@error <> 0 ROLLBACK DELETE DB_A.dbo.Table1 WHERE age > 30
IF @@error <> 0 ROLLBACK
ELSE COMMIT
GO
BEGIN TRAN
insert into DB_B.dbo.Table1 select * from DB_A.dbo.Table1 where age>30 delete from DB_A.dbo.Table1 where age>30
COMMIT TRAN
GO用当 SET XACT_ABORT 为 ON 时,如果 Transact-SQL 语句产生运行时错误,整个事务将终止并回滚。为 OFF 时,只回滚产生错误的 Transact-SQL 语句,而事务将继续进行处理。编译错误(如语法错误)不受 SET XACT_ABORT 的影响。