dav*_*ain 3 sql sql-server sql-server-2008
那为什么不起作用呢?
<!-- language: lang-sql -->
DECLARE @tn NVARCHAR
SET @tn = 'MyTable'
SELECT OBJECT_ID(@tn)
Run Code Online (Sandbox Code Playgroud)
当这样做时:
<!-- language: lang-sql -->
SELECT OBJECT_ID('MyTable')
Run Code Online (Sandbox Code Playgroud)
我需要将变量传递给此函数。
是的
declare @name sysname = N'sys.objects';
select object_id(@name);
-----------
-385
(1 row(s) affected)
Run Code Online (Sandbox Code Playgroud)
在您的示例中,声明了一个长度为1的变量(因为省略了length)。OBJECT_ID(N'M')一无所获并返回NULL。
在数据定义或变量声明语句中未指定n时,默认长度为1。在CAST函数中未指定n时,默认长度为30。
| 归档时间: |
|
| 查看次数: |
1968 次 |
| 最近记录: |