日期:2014-05-17  浏览次数:20493 次

关于SQL2008 CROSS APPLY的问题
SELECT t.text
FROM sys.dm_exec_connections C
CROSS APPLY sys.dm_exec_sql_text (C.most_recent_sql_handle) t WHERE c.session_id = 1071


消息 102,级别 15,状态 1,第 3 行
'.' 附近有语法错误。

难道SQL Server 2008不支持这种写法吗?还是我写错了?
------解决方案--------------------
貌似没错。
------解决方案--------------------
没有错,我的可以执行
------解决方案--------------------
引用:
没有错,我的可以执行

奇怪了,就是不给我执行
------解决方案--------------------
在2005上执行又没有问题,是不是还有其他什么限制?
------解决方案--------------------
你的设置里有没有区分大小写,把C统一下看看。
------解决方案--------------------
引用:
你的设置里有没有区分大小写,把C统一下看看。


改了也不行,提示错误的位置是 “C.most_recent_sql_handle”这里
------解决方案--------------------
是因为数据库的兼容级别不对,因为设置为兼容sqlserver2005,即90