数据操作语言 (DML) 语句 (Transact-SQL)

Microsoft SQL Server 2005 提供全新的增强查询语法元素,可实现更强大的数据访问和处理。

新增的 DML 子句和选项

子句或选项 说明

OUTPUT 子句

将插入的行、更新的行或删除的行作为 INSERT、UPDATE 或 DELETE 语句的一部分返回调用应用程序。

WITH common_table_expression

指定在 SELECT、INSERT、UPDATE 或 DELETE 语句作用域内定义的临时命名结果集或视图。

.WRITE 子句

在 UPDATE 语句中追加 varchar(max)nvarchar(max)varbinary(max) 数据类型列,可以进行部分更新和提高性能。

增强的 DML 语句和子句

语句或子句 说明

SELECT

提供以下新语法项:

  • WITH 公用表表达式
  • TOP 表达式
  • 用于选择用户定义的类型值的用户定义的类型列名

INSERT

提供以下新语法项:

  • WITH 公用表表达式
  • TOP 表达式
  • OUTPUT 子句

允许插入用户定义的类型值。

UPDATE

提供以下新语法项:

  • WITH 公用表表达式
  • TOP 表达式
  • OUTPUT 子句
  • 用于更新用户定义的类型值的用户定义的类型列名
  • .WRITE 子句

DELETE

提供以下新语法项:

  • WITH 公用表表达式
  • TOP 表达式
  • OUTPUT 子句

FOR 子句

提供以下新的 FOR XML 指令:

  • TYPE 实现了作为 xml 类型的查询结果的检索。
  • XMLSCHEMA 启用 XSD 架构的请求。

允许嵌套的 FOR XML 查询。

FROM

提供以下附加表源语法:

  • APPLY
  • PIVOT/UNPIVOT
  • TABLESAMPLE
  • 大容量列别名

TOP

可与 SELECT、INSERT、UPDATE 和 DELETE 语句一起使用。

SQL Server 2005 还包括新的 DDL 语句。有关详细信息,请参阅数据定义语言 (DDL) 语句 (Transact-SQL)

与 Service Broker 相关的新语句

查询可以是 SELECT 语句的目标,但查询不能与 INSERT、UPDATE 或 DELETE 语句一起使用。SQL Server 2005 引入了以下与 Service Broker 对象一起使用的 DML 语句。

语句 说明

BEGIN DIALOG

在两个对象之间启动新会话。

BEGIN CONVERSATION TIMER

对会话启动计时器。

END CONVERSATION

结束现有会话。

GET CONVERSATION GROUP

为队列中的下一个可用消息锁定会话组。

MOVE CONVERSATION

将现有会话与另一个会话组关联。

RECEIVE

从队列中检索一个或多个消息。

SEND

将消息发送到服务。

SQL Server 2005 还包括用于处理 Service Broker 对象的新的 DLL 语句。有关详细信息,请参阅数据定义语言 (DDL) 语句 (Transact-SQL)

请参阅

其他资源

Transact-SQL 中的新增功能和增强功能 (Transact-SQL)

帮助和信息

获取 SQL Server 2005 帮助