Ale*_*mov 4 sql t-sql sql-server syntax sql-server-2008
以下无法编译:
DECLARE
@DateFrom Date = '20151225',
@DateTo Date = '20151226',
@Ids TABLE (Id Int NOT NULL);
Run Code Online (Sandbox Code Playgroud)
有错误:
关键字"TABLE"附近的语法不正确.
但是当我DECLARE为表变量声明添加它自己的时候,它完美地编译:
DECLARE
@DateFrom Date = '20151225',
@DateTo Date = '20151226';
DECLARE
@Ids TABLE (Id Int NOT NULL);
Run Code Online (Sandbox Code Playgroud)
这是SQL小提琴.
第一个片段有什么问题?我们不允许声明DECLARE与其他变量声明共享同一块的表变量?
声明表变量时,表变量必须是DECLARE语句中声明的唯一变量.
您也可以在语法中清楚地看到它:
DECLARE
{
{ @local_variable [AS] data_type | [ = value ] }
| { @cursor_variable_name CURSOR }
} [,...n]
| { @table_variable_name [AS] <table_type_definition> }
Run Code Online (Sandbox Code Playgroud)
@local_variable可以声明一个或多个s([,...n]部分),或仅声明一个@table_variable_name.
| 归档时间: |
|
| 查看次数: |
232 次 |
| 最近记录: |