SQL Server事务备份和还原解决办法
2022-11-12 09:40:00
内容摘要
这篇文章主要为大家详细介绍了SQL Server事务备份和还原简单示例,具有一定的参考价值,可以用来参考一下。
对此感兴趣的朋友,看看idc笔记做的技术笔记!
废话不多说,直接上代码
文章正文
这篇文章主要为大家详细介绍了SQL Server事务备份和还原简单示例,具有一定的参考价值,可以用来参考一下。
对此感兴趣的朋友,看看idc笔记做的技术笔记!
废话不多说,直接上代码
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | <code> create database mydb use mydb go create table account( id varchar(16), name varchar(16), balance float ) go select * from account insert into account(id, name, balance) values( '620101' , 'liyong' , 300) insert into account(id, name, balance) values( '620106' , 'mali' , 400) --insert into account(id, name, balance) values( '620009' , 'chenying' , 800) insert into account(id, name, balance) values( '646009' , 'chenying' , 800) -- delete from account where id = '620009' go update account set balance = balance - 1000 where id = '620101' update account set balance = balance + 1000 where id = '620106' --消息 547,级别 16,状态 0,第 1 行 --UPDATE 语句与 CHECK 约束 "CK_Blance" 冲突。该冲突发生于数据库 "mydb" ,表 "dbo.account" , column 'balance' 。 --语句已终止。 go --alter table account --alter COlumn balance int go alter table account add constraint CK_Blance check(balance >= 0) go alter table account drop constraint CK_Blance --定一个事务 --从liyong扣钱往mali加钱 begin transaction update account set balance = balance - 1000 where id = '620101' if ((select balance output from account where id = '620101' ) < 0) begin PRINT ( '余额不足!' ); ROLLBACK; end else begin update account set balance = balance + 1000 where id = '620106' commit; PRINT ( '转账成功!' ); end go sp_help --备份设备 sp_addumpdevice 'disk' , 'xk_bak' , 'd:\xk_bak' --备份数据库 backup database mydb to xk_bak --还原数据库 restore database mydb from disk = 'd:\xk_bak' with replace; --覆盖</code> |
以上这篇Sqlserver事务备份和还原的实例代码(必看)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持512笔记。
注:关于SQL Server事务备份和还原简单示例的内容就先介绍到这里,更多相关文章的可以留意
代码注释