sql server output用法说明
带有output的insert语句.
@@identity只能返回当前会话最后生产的标识列. 如果一次性插入多条语句的话. 需要返回这些自动生产的标识列. 那么outpu就派上用场了.
declare @temp table(k int, v nvarchar(200))
insert into t1(datacol)
output inserted.keycol, inserted.datacol
into @temp
select * from @temp --------------------
insert into DownLog
output
newid(),inserted.id,inserted.ID,inserted.ID, inserted.ID,getdate() into MatchOrderLog
values('123444','aaaaaa.txt',getdate(),1,1,1)
select * from MatchOrderLog
带有output的delete语句和update语句也大同小异.
delete语句能操作deleted临时表. 而update的本质是delete和insert一次能操作inserted和updated两张表.
update loanee set MatchOrder=@MatchOrder,UpdateTime=getdate()
output
newid(),deleted.id,deleted.ApplicationID,deleted.MatchOrder, inserted.MatchOrder,getdate() into MatchOrderLog
where ApplicationID=@ApplicationID and DeleteState=0 and LoaneeType=0
============================
deleted.参数名 是更改前的参数值
inserted.参数名 是更改或者插入后的参数值
使用 格式 : insert into 表名 output inserted.参数名,inserted.参数名2 into 记录表 values(表值,表值2,表值3...)
update 表名 set 参数名=参数值,参数名2=参数值2 ... output inserted.参数名,inserted.参数名2 into 记录表 where 条件...
sql server output用法说明的更多相关文章
- SQL Server特殊用法笔记
1. MERGE用法:关联两表,有则改,无则加 SQL语句: create table #AAA(id int,A int,AA int,AAA int,B int) create table #BB ...
- SQL SERVER各种用法总结
sql创建临时表http://www.cnblogs.com/jeffwongishandsome/archive/2009/08/05/1526466.html sqlserver更改表名 EXEC ...
- SQL Server output子句用法 output inserted.id 获取刚插入数据的id
--插入数据,并返回刚刚插入的数据id INSERT INTO [soloreztest] ([name]) output inserted.id VALUES ('solorez') --执行结果: ...
- SQL Server存储过程用法介绍
存储过程其实就是已预编译为可执行过程的一个或多个SQL语句. 通过调用和传递参数即可完成该存储过程的功能. 前面有介绍过存储过程的一些语法,但是没有详细示例,今天我们来一起研究一下存储过程. 提高性能 ...
- SQL Server output经典使用
output经典使用 分类: sql2012-02-16 18:17 409人阅读 评论(0) 收藏 举报 outputinserttabledeletegonull OUTPUT是SQL SERVE ...
- SQL Server @@ERROR 用法
@@error是系统函数,当没有发生错误时返回0,如果发生错误时@@error<>0,并返回错误号,每个SQL语句执行完,@@error值都会变. @@error只记录当前错误,如果存储过 ...
- SQL server 常见用法记录
-- ============================================= -- Author: tanghong -- Create da ...
- VBA 连接sql server的用法
cnnstr = "Provider=sqloledb;Data Source=192.211.21.8;Initial Catalog=pub;UID=账号;PWD=密码" VB ...
- SQL Server merge用法
有两个表名:source 表和 target 表,并且要根据 source 表中匹配的值更新 target 表. 有三种情况: source 表有一些 target 表不存在的行.在这种情况下,需要将 ...
随机推荐
- 树莓派如何便捷的使用pi4j
问题的由来 pi4j用起来很方便,但是感觉pi4j库的命名太杂乱,啰嗦了,很容易弄混,而且好像没听说官方有自己的编译器.如果没有智能点的编辑器的话,写起来真要命,但是树莓派运行Eclipse不太现实, ...
- Nodejs电影建站开发实例(下)
作为一个真正的网站,不能没有数据的支持,下面使用的数据库为mongodb,电影可能有的数据:电影名称.导演.国家.语言.上映时间.图片.简介.视频 4.使用路由 app.js var express ...
- "rel=nofollow"属性简介
nofollow是HTML元标签(meta)的content属性和链接标签(a)的rel属性的一个值,告诉机器(爬虫)无需追踪目标页,为了对抗blogspam(博客垃圾留言信息),Google推荐使用 ...
- 基于 backbone的弹窗插件
define(['backbone', 'jquery', 'text!creditCardTpl/page.html'], function (bacobone, jquery, dialog_tp ...
- mysql存储过程之游标遍历数据表
原文:mysql存储过程之游标遍历数据表 今天写一个mysql存储过程,根据自己的需求要遍历一个数据表,因为对存储过程用的不多,语法不甚熟悉,加之存储过程没有调试环境,花了不少时间才慢慢弄好,故留个痕 ...
- Processes vs Threads
A process is an executing instance of an application. What does that mean? Well, for example, when y ...
- JMeter学习-017-java.net.SocketException: Permission denied: connect 解决方案
前几天,有了新的接口性能测试需求,同事在添加 HTTP请求 后,运行时响应信息如下所示: java.net.SocketException: Permission denied: connect at ...
- JVM培训作业第二周
1. jre的运行时主要jar文件rt.jar都很大,这导致了用java做的桌面客户端程序很难发布绑定jre发布.这在很大程度上限制了java桌面软件 的分发.可是,jre并不是在所有的用户计算机上都 ...
- SET Statements (Transact-SQL)
The Transact-SQL programming language provides several SET statements that change the current sessio ...
- route命令(转)
Linux系统的route命令用于显示和操作IP路由表(show / manipulate the IP routing table).要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或 ...