bernd_k Asked: 2011-03-14 04:27:14 +0800 CST2011-03-14 04:27:14 +0800 CST 2011-03-14 04:27:14 +0800 CST 我可以在不解析定义的情况下确定存储过程是否使用动态sql吗? 772 由于似乎没有办法在不解析 cf 的情况下从注释中删除过程定义。这个,似乎没有可靠的 T-SQL 查询来回答这个问题。 或者我可以从任何系统视图中获取此信息吗? 比照。我关于剥离评论的问题 sql-server-2008 dynamic-sql 1 个回答 Voted Best Answer gbn 2011-03-14T04:57:15+08:002011-03-14T04:57:15+08:00 没有。没有关于“UsesDynamicSQL”的标志或元数据 你必须搜索定义... 有2种方式执行动态SQL sp_executesql EXEC (..或者EXECUTE (' 您可以在 sys.sql_modules 中搜索第一个,第二个使用 LIKE WHERE REPLACE(definition, ' ', '') LIKE '%EXEC(%' OR REPLACE(definition, ' ', '') LIKE '%EXECUTE(%' OR definition LIKE '%sp[_]executesql%'
没有。没有关于“UsesDynamicSQL”的标志或元数据
你必须搜索定义...
有2种方式执行动态SQL
EXEC (..
或者EXECUTE ('
您可以在 sys.sql_modules 中搜索第一个,第二个使用 LIKE