--> 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可以获取具体的影响信息 以下分别说明
Output在Insert语句中的应用
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, '一般'
Output在delete语句中的应用
DELETE FROM book
OUTPUT DELETED.*
WHERE bkno=104;
Output在update语句中的应用
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语言的基础知识和高级特性。T-SQL,全称Transact-SQL,是微软SQL Server数据库管理系统中使用的SQL方言,它在标准SQL...
### T-SQL编程入门(SQL Server) #### 一、T-SQL的组成 T-SQL (Transact-SQL) 是 Microsoft SQL Server 使用的一种扩展版本的 SQL 语言,它提供了额外的功能来增强 SQL 的功能,使开发者能够更高效地管理和操作...
常见的DML语句包括INSERT、UPDATE、DELETE和SELECT。 2. DCL(数据控制语言Data Control Language):DCL主要用于设置或更改数据库用户的访问权限和权限级别。GRANT、DENY和REVOKE是DCL的核心命令。 3. DDL(数据...
标题“SQL Server 2008技术内幕 T-SQL语言基础.zip”和描述“解压密码 1234”暗示了该压缩包包含的是有关SQL Server 2008数据库系统中的T-SQL语言的入门与进阶资料。T-SQL是微软的SQL Server数据库系统专用的一种...
### 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中最常用的操作之一,可以实现简单查询、复杂查询以及各种数据过滤和排序需求。例如,`SELECT column_name FROM table_name WHERE condition;` 这个基本结构可以用于筛选特定条件下的记录。 #### 数据定义...
《SQL Server 2005技术内幕:T-SQL查询》是针对SQL Server 2005数据库管理系统中T-SQL(Transact-SQL)查询的入门基础教程。T-SQL是微软SQL Server的主要编程语言,用于管理和操作数据库,执行查询、数据更新、存储...
《 Beginning T-SQL 2012, 2nd Edition》是针对SQL Server 2012数据库管理系统的一本入门教程,旨在帮助读者理解和掌握T-SQL(Transact-SQL)语言,它是Microsoft SQL Server的主要查询语言。这本书的第二版在原有的...
### Oracle_PL-SQL入门教程(金典) #### SQL语言概览 **SQL**(Structured Query Language,结构化查询语言)是一种专门用于与数据库交互的标准语言。它被设计用于执行多种数据库操作,包括但不限于数据检索、...
《SQL入门经典》读书笔记 SQL,全称为Structured Query Language,即结构化查询语言,是用于与关系型数据库管理系统(RDBMS)交互的标准语言。关系型数据库由一系列被称为表的逻辑单元组成,这些表由字段、记录、列和...
### SQL与T-SQL入门详解 #### 一、SQL简介 **SQL**(Structured Query Language)是一种标准的计算机语言,主要用于管理关系型数据库。它能够帮助用户执行查询、更新数据、创建新表、存储过程和视图等操作。SQL是...
6. WHERE:在DML语句中用于设定筛选条件,只有满足条件的记录才会被操作。 7. GROUP BY:用于对查询结果进行分组,常与聚合函数一起使用。 8. HAVING:在GROUP BY后用于设定分组后的筛选条件。 9. ORDER BY:用于对...
触发器可以细分为行级触发器和语句级触发器,行级触发器会对每一行操作执行一次,而语句级触发器仅在一次DML语句操作完成后执行。在触发器中,可以通过:old和:NEW关键字来引用触发操作前后数据的变化。触发器的...
SQL语句学习入门涉及的知识点涵盖了结构化查询语言(SQL)的多个方面,包括基础语法、各类操作符、数据操作语言(DML)和数据定义语言(DDL)等。下面详细解读这些知识点。 1. SQL简介 SQL(Structured Query ...
子查询可以在SELECT语句中嵌套另一个SELECT语句,用于从另一个表中获取数据。这种技术可以帮助我们更灵活地查询数据。 ```sql SELECT * FROM students WHERE age IN (SELECT MAX(age) FROM students); ``` ##### ...
### SQL语句大全解析及示例(个人总结-入门级) #### 一、引言 在数据库管理系统(DBMS)中,SQL(Structured Query Language,结构化查询语言)是一种用于管理和处理存储在关系型数据库中的数据的标准语言。它不仅...
Excel VBA+ADO+SQL 入门教程 Excel VBA+ADO+SQL 是一种强大的数据处理和分析工具,能够帮助用户快速高效地处理和分析大量数据。下面是对 Excel VBA+ADO+SQL 的详细介绍和应用。 一、认识 SQL SQL(Structured ...
### SQL 语言入门篇——最常用 SQL 语句大全 SQL(Structured Query Language)作为一门专为关系型数据库设计的语言,被广泛应用于数据库管理和数据处理领域。本文将深入讲解一些常用的SQL语句,并通过示例来帮助...
### SQL入门新手教程知识点详解 #### 一、SQL简介 - **定义**:SQL(Structured Query Language,结构化查询语言)是一种广泛应用于访问和管理数据库的标准计算机语言。 - **功能**: - **执行查询**:能够从...