22、SQL Server 数据修改之返回修改的数据
2013-06-15 15:33
204 查看
数据修改之返回修改的数据
使用output子句嵌入到insert update delete 语句中,可以访问插入和删除的虚拟表,以选择要返回的数据。
其中删除虚拟表(Deleted)存储原来的数据、插入虚拟表(Inserted)存储了更新后
或新插入的数据。使用output子句能够选择这些表中的所有列或指定列。
一、返回插入的数据
命令Insert使插入虚拟表Inserted表可用。
如:
insert into bumen(bmname) output inserted.* values('新部门')
结果:
id bmname isdelete
11 新部门 0
二、返回更新前和更新后的数据
如:
update bumen set bmname='另外一个新部门' output deleted.bmname as 原来的名称,inserted.bmname as 新名称 where bmname='新部门'
结果:
原来的名称 新名称
新部门 另外一个新部门
三、返回删除的数据
如:
delete from bumen output deleted.id as 删除的部门编号,deleted.bmname as 删除的部门名称 where bmname='另外一个新部门'
结果:
删除的部门编号 删除的部门名称
11 另外一个新部门
四、将返回的数据存储到表变量中
基本语法:
output ...
into 表变量
如:
declare @returndatatable table ( id int default 0, name varchar(50), isdelete int ) insert into bumen(bmname) output inserted.* into @returndatatable values('新部门') select * from @returndatatable
结果:
id name isdelete
14 新部门 0
相关文章推荐
- 22、SQL Server 数据修改之返回修改的数据
- SQL Server 中的分区表(二):如何添加、查询、修改分区表中的数据
- 修改CAS登陆后返回给客户端的数据,增加密码字段
- 在josnp数据请求中,如何将返回的数据修改成自己需要的格式
- sql server返回插入数据表的id,和插入时间
- SQL Server 2005中的分区表 如何添加、查询、修改分区表中的数据
- 返回数据库数据的存储过程函数(2个参数)(SQL Server)
- 监控SQL:通过SQL Server的DML触发器来监控哪些IP对表的数据进行了修改(2)
- 浅谈SQL Server中的事务日志(二)----事务日志在修改数据时的角色
- java操作sql server数据添加,修改,删除记录
- 如何修改设置使得SQL Server 2008能编辑200行以上的数据
- SQL Server 2005的XML数据修改语言(XML DML)
- SQL Server 使用Order by newID()返回随机数据
- SQL Server 修改表结构并保留数据
- SQL SERVER示例:修改自定义数据类型精度
- SQL SERVER 2008数据库的表中修改字段的数据类型后,不能保存
- SQL Server插入或修改数据是中文乱码的问题
- SQL SERVER 2012 第五章 创建和修改数据表 の SQL SERVER中的对象名
- 返回数据库数据的存储过程函数(1个参数)(SQL Server)
- 监控SQL:通过SQL Server的DML触发器来监控哪些IP对表的数据进行了修改(2)