SQL Server 2008 对 T-SQL 语言的增强
2007-07-15 09:46:28 来源:WEB开发网核心提示:Microsoft SQL Server 2008 对 T-SQL 语言进行了进一步增强,为了让开发人员尽快了解这些变化,SQL Server 2008 对 T-SQL 语言的增强,我们针对 2007 年 6 月 CTP 版本的 SQL Server 2008 中的 T-SQL 语言的新增功能进行了分析和尝试,本文描述
Microsoft SQL Server 2008 对 T-SQL 语言进行了进一步增强。为了让开发人员尽快了解这些变化,我们针对 2007 年 6 月 CTP 版本的 SQL Server 2008 中的 T-SQL 语言的新增功能进行了分析和尝试。本文描述自 SQL Server 2008 CTP1 以来这些语言增强和变化。
本文包含如下内容:
· T-SQL 行构造器
· FORCESEEK 表提示
· GROUPING SETS
· 兼容性级别
· 用户自定义表数据类型
· 表值参数
· MERGE 语句
本文适用于:Microsoft)R) SQL Server(TM) 2008 Developer Edition June 2007 CTP
1、T-SQL 行构造器
T-SQL 行构造器(Row Constructors)用来在 INSERT 语句中一次性插入多行数据。例如:
CREATE TABLE #a
(
Column1 nvarchar(max),
Column2 nvarchar(max)
);
GO
INSERT INTO #a
VALUES (
('1', '1'),
('2', '2')
);
SELECT * FROM #a;
GO
DROP TABLE #a;
GO
经过增强后的 INSERT 语句的语法结构如下。
[ WITH <common_table_expression> [ ,...n ] ]
INSERT
[ TOP ( expression ) [ PERCENT ] ]
[ INTO ]
{ <object> | rowset_function_limited
[ WITH ( <Table_Hint_Limited> [ ...n ] ) ]
}
{
[ ( column_list ) ]
[ <OUTPUT Clause> ]
{ VALUES ( ( { DEFAULT | NULL | expression } [ ,...n ] ) [ ,...n ] )
| derived_table
| execute_statement
| <dml_table_source>
| DEFAULT VALUES
}
}
[; ]
<object> ::=
{
[ server_name . database_name . schema_name .
| database_name .[ schema_name ] .
| schema_name .
]
table_or_view_name
}
<dml_table_source> ::=
SELECT <select_list>
FROM ( <dml_statement_with_output_clause> )
[AS] table_alias [ ( column_alias [ ,...n ] ) ]
[ WHERE <search_condition> ]
[ OPTION ( <query_hint> [ ,...n ] ) ]
2. FORCESEEK 提示
- ››SQL Server 2008 R2 下如何清理数据库日志文件
- ››sqlite 存取中文的解决方法
- ››SQL2005、2008、2000 清空删除日志
- ››SQL Server 2005和SQL Server 2000数据的相互导入...
- ››sql server 2008 在安装了活动目录以后无法启动服...
- ››sqlserver 每30分自动生成一次
- ››sqlite 数据库 对 BOOL型 数据的插入处理正确用法...
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
更多精彩
赞助商链接