Pro*_*aKa 5 sql-server sql-server-2008 sql-server-2014
关于已弃用功能(多于两部分的列名称)的定义是
查询在列列表中使用了 3 部分或 4 部分名称。更改查询以使用符合标准的 2 部分名称。每次编译发生一次。
我可以为这个功能提供一些例子吗?
而且由于我有一些代码使用了 sql server 的某些功能,例如:
Select xml.Item.value('[something]', 'varchar(20)') AS something from xml
Run Code Online (Sandbox Code Playgroud)
部分 xml.Item.value(...) 是否视为列列表中的 3 部分或 4 部分名称?
而且由于我只是手动查看数据库中的存储过程来搜索这个已弃用的功能,还有其他方法(例如查询)可以在我的数据库中找出这些内容吗?
非常感谢
以下是引用选项(但这对所有数据库对象并不相同):
1 部分命名:(tablename 架构:登录用户的默认架构(例如:)dbo,数据库:当前)
两部分命名:(schemaname.tablename 数据库当前)
3 部分命名: servername.schemaname.tablename
4 部分命名: linkedserver.servername.schemaname.tablename
对于您的示例,该部分xml.Item.value(...)不适用于 3 部分命名文化 -value()从 xml 类型列或变量中检索值的方法也是如此。
对于第二部分,您可以使用此查询来找出数据库中正在使用和运行的所有已弃用功能-
SELECT OBJECT_NAME,counter_name,instance_name AS 'Deprecated Feature',cntr_value AS 'Number of Times Used'
FROM sys.dm_os_performance_counters WHERE OBJECT_NAME LIKE '%:Deprecated%' AND cntr_value > 0
ORDER BY 'Number of Times Used' DESC
Run Code Online (Sandbox Code Playgroud)
脚注:根据 Microsoft 为什么不推荐使用该功能,这就是我所得到的 - 帮助优化器、减少混乱和标准化代码。
编辑:按照链接-它看起来对于使用弃用的功能鉴定。现在,如果您想在您的文件中找到一些特定的文本/关键字集,stored procedure那么您可以尝试此处列出的任何方法 - link。
| 归档时间: |
|
| 查看次数: |
1251 次 |
| 最近记录: |