Output在CRUD的区别

1.对于INSERT,可以引用inserted表以查询新行的属性.在insert into table output .

2.对于DELETE,可以引用deleted表以查询旧行的属性.在delete table output .

3.对于UPDATE,使用deleted表查询被更新行在更改前的属性,用inserted表标识被更新行在更改后的值.  update table set c1= 1 output.

输出方式:

1.可以输出给调用方(客户端应用程序)

2.输出给表

3.两者皆可.

 示例

1.insert

--基本形式
insert into test103 output inserted.* values(100,100),(200,200)
--输入形式,注意into后面的表(这里是test1033)必须已经存在,否则会报找不到对象语法错误,且必须与test103表结构相同!
insert into test103 output  inserted.* into test1033  values(100,100),(200,200)

基本形式演示图:

  

如图可见,在insert 中使用output 并不影响insert本来的情况,只是会额外输出新行的数据

输入形式演示图:

  

  如图可见,把新增的两行插入到test1033表中去了

2.delete

  

--基本形式
delete test101 output deleted.*
--输入形式,同理也需要test1011存在
delete test101 output deleted.* into test1011

  

  如图,delete 中使用output可以把删除部分的数据输出出来,如果需要保留则可以使用into  backup_table,但是backup_table必须已经存在并且与原表数据结构相同。

3.update

  

update t1   set id =1 output deleted.*,inserted.*
--deleted为修改前,inserted为修改后

  演示如图

  

4.delete 就不多说了就是一样的

  

--基本形式//输入形式一样 这里就不多说了
delete t1 output deleted.* from test101 t1

(1.4)DML增强功能-Output的更多相关文章

  1. (1.1)DML增强功能-CTE

    1.CTE的通用形式 WITH temp_name as ( CTE查询结果集 ) 释义: (1)with/as :关键字 (2)temp_name:为CTE临时使用名称,可以看初学者做是一个临时表 ...

  2. (1.5)DML增强功能-try catch及事务控制

    一.事务控制与Try Catch结合 当 SET XACT_ABORT 为 ON 时,如果执行 Transact-SQL 语句产生运行时错误,则整个事务将终止并回滚. 当 SET XACT_ABORT ...

  3. (1.3)DML增强功能-Apply、pivot、unpivot、for xml path行列转换

    深入了解行列转换请参考另一篇文章:https://www.cnblogs.com/gered/p/9271581.html 总结: 1.apply一般形式 --基本形式 SELECT a FROM d ...

  4. (1.2)DML增强功能-4大排名函数与top ties/tablesample

    关键字:sql server窗口函数.分析函数.四大窗口函数 1.row_number()  over( partition by column order by column) (1)测试数据 (2 ...

  5. 12c分区增强功能,新功能(文档ID 1568010.1)

    12c Partitioning Enhancements, New Features (Doc ID 1568010.1) APPLIES TO: Oracle Database - Enterpr ...

  6. virtualbox安装增强功能时【未能加载虚拟光盘】

    virtualbox安装增强功能时[未能加载虚拟光盘] 今天在使用Virtualbox中的Ubuntu虚拟机,想安装增强功能来实现更改分辨率,但是在安装时出错:未能加载虚拟光驱 VBoxsGuestA ...

  7. virtualbox安装增强功能(centos6.5)

    vitualbox安装增强功能(centos 6.5) 1. 安装依赖包 #yum install kernel-headers-$(uname -r) #yum install kernel-dev ...

  8. VirtualBox-Linux系统安装增强功能

    我们在安装之前,必须得先安装好它所需要的依赖包,不然安装过程必定会出现错误! 一.安装依赖包 #yum install kernel-headers #yum install kernel-devel ...

  9. 安装Virtual Box增强功能 - Ubuntu

    一.开发环境 操作系统:Windows 7Virtual Box 版本: 5.0.10 虚拟机系统: Ubuntu 12.04 LTS 二.问题 进入Ubuntu图形界面后,选择“设备” --> ...

随机推荐

  1. CentOS7忘记root密码的解决方法

    开机启动centos 7.0,看到如下画面,选择下图选单,按"e"键 在下图linux16行中,将ro这两个字母修改为rw init=/sysroot/bin/sh 修改结果如下图 ...

  2. oracle中LAG()和LEAD()以及over (PARTITION BY)

    LAG()和LEAD()统计函数可以在一次查询中取出同一字段的前N行的数据和后N行的值.这种操作可以使用对相同表的表连接来实现,不过使用LAG和 LEAD有更高的效率.以下整理的LAG()和LEAD( ...

  3. Unity 如何高效的解析数据

    昨天和朋友聊天时,他遇到这么一个问题:现在有按照一定格式的数据,例如:#code==text 此处是注释100==确定101==取消key==value 这么个格式的,说白了就是怎样解析这些固定格式字 ...

  4. day15<集合框架>

    集合框架(对象数组的概述和使用) 集合框架(集合的由来及集合继承体系图) 集合框架(Collection集合的基本功能测试) 集合框架(集合的遍历之集合转数组遍历) 集合框架(Collection集合 ...

  5. Linux printf 命令

    printf 命令用来格式化输出,用法如下: [keysystem@localhost ~]$ printf "%s\n" 1 2 3 4 1 2 3 4 [keysystem@l ...

  6. Websphere停止服务不用输入账号密码

    启用了安全性的WebSphere Application Server,在日常维护中经常在停止服务的时候需要输入用户名和密码.停止的方式如下:[root@was /]# /opt/IBM/WebSph ...

  7. 关于C中I/O缓冲区的解释

    用户程序调用C标准I/O库函数读写文件或设备,而这些库函数要通过系统调用把读写请求传给内核,最终由内核驱动磁盘或设备完成I/O操作.C标准库为每个打开的文件分配一个I/O缓冲区以加速读写操作,通过文件 ...

  8. c++11——列表初始化

    1. 使用列表初始化 在c++98/03中,对象的初始化方法有很多种,例如 int ar[3] = {1,2,3}; int arr[] = {1,2,3}; //普通数组 struct A{ int ...

  9. ubuntu 14 root 账户 启用与ssh登录

    ubuntu 14.04 root用户登录 开启root帐号的方法: 为了启用root 帐号(也就是设置一个口令)使用: sudo passwd root 当你使用完毕后屏蔽root帐号使用: sud ...

  10. 从TCP三次握手说起--浅析TCP协议中的疑难杂症(1)

    版权声明:本文由黄日成原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/73 来源:腾云阁 https://www.qclou ...