`
wsql
  • 浏览: 12313825 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

T-SQL入門攻略之14-获取DML语句的影响信息

阅读更多

--> Title : T-SQL入門攻略之14-获取DML语句的影响信息

--> Author : wufeng4552

--> Date : 2010-07-29

首先把上节没讲完的讲完:

多列更新

UPDATE testbook

SET price = price * 0.3,--打折

remark = '过时图书' --备注

WHERE date<='2000-01-01';

大容量数据更新

GO

UPDATE file_table

SET FileName='Img100.jpg',

DOCUMENT=(

SELECT *

FROM OPENROWSET(BULK 'C:\Img100.jpg', SINGLE_BLOB) AS Document

)

WHERE FileType='.jpg';

删除数据

(1) 删除部分数据

DELETE FROM book2 -- 删除部分数据

WHERE DATE<'2000/1/1';

(2) 删除全部数据

DELETE FROM book2 -- 删除全部数据

当然也可以这样删除全部数据

truncate table book2

注:这里从效果上看truncate table DELETE是一样的,都是删除表中的所有数据,但是不包括表结构。但是他们有不同:

(1) 执行delete语句 系统将逐行对数据进行删除 并记录日志信息。

(2) 执行truncate语句时候 系统将一次性删除与表有关的所有数据页,且不记录日志,不形成日志文件。

基于以上亮点可以看出truncate table要比delete快的多,因为前者不记录日志。但是这也说明了truncate table语句删除的数据不能用rollback语句来恢复.相反delete可以

查看数据表

SELECT a.name 字段名,

b.name 字段类型,

a.max_length 字段长度

FROM sys.all_columns as a

JOIN sys.types as b

ON a.system_type_id = b.system_type_id

WHERE object_id = object_id('dbo.student');

删除数据表

Drop table T1,T2,T3

2005及以上版本在操纵语句中使用output可以获取具体的影响信息 以下分别说明

OutputInsert语句中的应用

INSERT book

OUTPUT INSERTED.*

SELECT 106,'数字图像处理', '宋青书', '科学出版社', '2006/7/1', '200607100',25.00, '较差'

当然也可以把返回的结果保存起来但是必须用表 或者表变量 不能用变量来接受 感兴趣的可以试验下

IF OBJECT_ID ('T2', 'U') IS NOT NULL DROP TABLE T2; --建立表结构

GO

CREATE TABLE T2

(

bkno int,

bkname nvarchar(50),

author nvarchar(8)

);

INSERT book

OUTPUT INSERTED.bkno, INSERTED.bkname, INSERTED.author

INTO T2

SELECT 104,'JSP网站开发教程', '赵敏', '电子工业出版社', '2002/10/11', '200210201', 35.00, '较好'

UNION ALL

SELECT 105,'C++Builder程序设计', '俞莲舟', '人民邮电出版社', '2007/1/1', '200701111', 53.00, '一般'

Outputdelete语句中的应用

DELETE FROM book

OUTPUT DELETED.*

WHERE bkno=104;

Outputupdate语句中的应用

DECLARE @MyTableVar TABLE --建立表变量作用类似表

(

preprice numeric(10,2),

posprice numeric(10,2)

)

UPDATE book

SET price = price*1.3

OUTPUT DELETED.price,

INSERTED.price

INTO @MyTableVar;

分享到:
评论

相关推荐

    T-SQL编程入门经典(涵盖SQL Server 2008 & 2005)配书资源

    《T-SQL编程入门经典》是一本专为SQL Server 2008和2005用户设计的教程,旨在帮助初学者掌握T-SQL语言的基础知识和高级特性。T-SQL,全称Transact-SQL,是微软SQL Server数据库管理系统中使用的SQL方言,它在标准SQL...

    T-SQL编程入门(SQL Server)

    ### T-SQL编程入门(SQL Server) #### 一、T-SQL的组成 T-SQL (Transact-SQL) 是 Microsoft SQL Server 使用的一种扩展版本的 SQL 语言,它提供了额外的功能来增强 SQL 的功能,使开发者能够更高效地管理和操作...

    T-SQL 语法参考手册.docx

    常见的DML语句包括INSERT、UPDATE、DELETE和SELECT。 2. DCL(数据控制语言Data Control Language):DCL主要用于设置或更改数据库用户的访问权限和权限级别。GRANT、DENY和REVOKE是DCL的核心命令。 3. DDL(数据...

    sql server 2008技术内幕 t-sql语言基础.zip

    标题“SQL Server 2008技术内幕 T-SQL语言基础.zip”和描述“解压密码 1234”暗示了该压缩包包含的是有关SQL Server 2008数据库系统中的T-SQL语言的入门与进阶资料。T-SQL是微软的SQL Server数据库系统专用的一种...

    Beginning T-SQL with Microsoft SQL Server 2005 and 2008

    ### T-SQL与Microsoft SQL Server 2005及2008入门 #### 引言 本书《Beginning T-SQL with Microsoft SQL Server 2005 and 2008》由Paul Turley和Dan Wood合著,是为那些希望学习Transact-SQL(简称T-SQL)语言以及...

    T_SQL手册

    它是T-SQL中最常用的操作之一,可以实现简单查询、复杂查询以及各种数据过滤和排序需求。例如,`SELECT column_name FROM table_name WHERE condition;` 这个基本结构可以用于筛选特定条件下的记录。 #### 数据定义...

    SQLSERVER2005技术内幕:T-SQL查询

    《SQL Server 2005技术内幕:T-SQL查询》是针对SQL Server 2005数据库管理系统中T-SQL(Transact-SQL)查询的入门基础教程。T-SQL是微软SQL Server的主要编程语言,用于管理和操作数据库,执行查询、数据更新、存储...

    Beginning T-SQL 2012, 2nd Edition

    《 Beginning T-SQL 2012, 2nd Edition》是针对SQL Server 2012数据库管理系统的一本入门教程,旨在帮助读者理解和掌握T-SQL(Transact-SQL)语言,它是Microsoft SQL Server的主要查询语言。这本书的第二版在原有的...

    Oracle_PL-SQL入门教程(金典)

    ### Oracle_PL-SQL入门教程(金典) #### SQL语言概览 **SQL**(Structured Query Language,结构化查询语言)是一种专门用于与数据库交互的标准语言。它被设计用于执行多种数据库操作,包括但不限于数据检索、...

    读书笔记-sql入门经典.docx

    《SQL入门经典》读书笔记 SQL,全称为Structured Query Language,即结构化查询语言,是用于与关系型数据库管理系统(RDBMS)交互的标准语言。关系型数据库由一系列被称为表的逻辑单元组成,这些表由字段、记录、列和...

    sql 入门 tsql 入门

    ### SQL与T-SQL入门详解 #### 一、SQL简介 **SQL**(Structured Query Language)是一种标准的计算机语言,主要用于管理关系型数据库。它能够帮助用户执行查询、更新数据、创建新表、存储过程和视图等操作。SQL是...

    入门以及精通SQL语句详细教程

    6. WHERE:在DML语句中用于设定筛选条件,只有满足条件的记录才会被操作。 7. GROUP BY:用于对查询结果进行分组,常与聚合函数一起使用。 8. HAVING:在GROUP BY后用于设定分组后的筛选条件。 9. ORDER BY:用于对...

    ORACLE PL/SQL从入门到精通

    触发器可以细分为行级触发器和语句级触发器,行级触发器会对每一行操作执行一次,而语句级触发器仅在一次DML语句操作完成后执行。在触发器中,可以通过:old和:NEW关键字来引用触发操作前后数据的变化。触发器的...

    sql语句学习入门

    SQL语句学习入门涉及的知识点涵盖了结构化查询语言(SQL)的多个方面,包括基础语法、各类操作符、数据操作语言(DML)和数据定义语言(DDL)等。下面详细解读这些知识点。 1. SQL简介 SQL(Structured Query ...

    深入浅出SQL系列教程-新手入门篇

    子查询可以在SELECT语句中嵌套另一个SELECT语句,用于从另一个表中获取数据。这种技术可以帮助我们更灵活地查询数据。 ```sql SELECT * FROM students WHERE age IN (SELECT MAX(age) FROM students); ``` ##### ...

    SQL语句大全解析及示例(个人总结-入门级)

    ### SQL语句大全解析及示例(个人总结-入门级) #### 一、引言 在数据库管理系统(DBMS)中,SQL(Structured Query Language,结构化查询语言)是一种用于管理和处理存储在关系型数据库中的数据的标准语言。它不仅...

    Excel_VBA+ADO+SQL入门教程看见星光.docx

    Excel VBA+ADO+SQL 入门教程 Excel VBA+ADO+SQL 是一种强大的数据处理和分析工具,能够帮助用户快速高效地处理和分析大量数据。下面是对 Excel VBA+ADO+SQL 的详细介绍和应用。 一、认识 SQL SQL(Structured ...

    SQL 语言入门篇-最常用 SQL 语句大全

    ### SQL 语言入门篇——最常用 SQL 语句大全 SQL(Structured Query Language)作为一门专为关系型数据库设计的语言,被广泛应用于数据库管理和数据处理领域。本文将深入讲解一些常用的SQL语句,并通过示例来帮助...

    SQL_入门新手教程

    ### SQL入门新手教程知识点详解 #### 一、SQL简介 - **定义**:SQL(Structured Query Language,结构化查询语言)是一种广泛应用于访问和管理数据库的标准计算机语言。 - **功能**: - **执行查询**:能够从...

Global site tag (gtag.js) - Google Analytics