查询以列出表值函数及其输入参数?

问题描述

以下查询将返回数据库中所有表值函数的列表及其输出列(和列数据类型)的列表。

USE DATABASENAME
GO

SELECT
rc.*
FROM
INFORMATION_SCHEMA.ROUTINES r INNER JOIN
INFORMATION_SCHEMA.ROUTINE_COLUMNS rc ON
r.ROUTINE_CATALOG = rc.TABLE_CATALOG AND
r.ROUTINE_SCHEMA = rc.TABLE_SCHEMA AND
r.ROUTINE_NAME = rc.TABLE_NAME
WHERE
r.ROUTINE_TYPE = 'FUNCTION' AND
r.DATA_TYPE = 'TABLE'

但是有没有办法查询数据库中所有表值函数的列表以及它们的输入参数(和参数数据类型)列表?

我查看了 here,但没有找到解决方案。

我注意到 ROUTINE_DEFINITION 表中有一个名为 INFORMATION_SCHEMA.ROUTINES 的列,它显示了创建表值函数的完整脚本,所以我想可以解析这个字符串并找到您正在寻找的输入数据类型,尽管这会非常复杂,特别是考虑到编程注释包含在此 ROUTINE_DEFINITION 中,这只会使事情更加复杂。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)