一、关于output使用,它返回由每个INSERT、UPDATE或DELETE命令所影响的记录行
1:insert + output Inserted
案例:insert into TableName output Inserted.* value(A,B,C)
2:update + output Inserted,Deleted
案例:update TableName set A=‘ ’ output Deleted.A as 修改前,Inserted.A as 修改后 where .......
3:可配合 into 语句使用,update + output Inserted,Deleted into tablename
案例:update TableName set A=‘ ’ output Deleted.A into TableName where .......
二、关于merge into使用,根据与源表联接的结果,对目标表执行插入、更新或删除操作。数据同步、数据转换、基于源表对目标表做Insert,Update,Delete操作,Merge关键字的一些限制,使用Merge关键字只能更新一个表、源表中不能有重复的记录
1、数据同步
2、数据转换
3、基于源表对目标表做Insert,Update,Delete操作
4、sqlserver 执行较大sql文件
2008版本:sql -S 服务器 -U 用户名 -P 密码 -i SQL路径
2012版本以上:sqlcmd -S . -U sa -P 123 -d test -i data.sql
参数说明:-S 服务器地址 -U 用户名 -P 密码 -d 数据库名称 -i 脚本文件路径
5、删除非基础数据表数据