gpt4 book ai didi

sql-server - 获取从存储过程返回的列名称/类型

转载 作者:行者123 更新时间:2023-12-02 06:23:16 26 4
gpt4 key购买 nike

有没有办法通过元数据(也许是Information_Schema?)来获取存储过程将返回的列的列表?我正在尝试自动生成一些代码,这将有很大帮助......

最佳答案

除非您准备好解析 INFORMATION_SCHEMA.ROUTINES 中的 ROUTINE_DEFINITION 的内容,否则最好的选择是执行过程,并从返回的记录中读取列信息。

在 .NET 中,您可以通过将存储过程的结果读入 DataTable 并查询 Columns 来完成此操作。属性。

之所以没有简单的方法可以做到这一点,是因为存储过程可能会根据参数返回不同的结果集。没有像用户定义函数那样的固定结果集格式。

编辑

正如其他答案中提到的,您将需要使用 SET FMTONLY ON以确保没有数据返回。在某些情况下 SET FMTONLY 不起作用,例如在存储过程中使用#temp 表时,但有一个 workaround .

关于sql-server - 获取从存储过程返回的列名称/类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3747879/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com