I
我正在使用系统程序从程序中获取Column Name
。
exec Sp_depends @procedure-name
但它没有返回别名列名。
我在程序中有以下查询。
SELECT ID, E_No As E_No, Case When E_SAL BETWEEN 10000 AND 50000 THEN 1 ELSE 0 END E_ACTIVE
FROM E_MAST
WHERE E_SAL BETWEEN 10000 AND 50000"
我需要所有列,包括别名列,但我无法返回别名。 如何从过程中返回别名列名?
目前的结果是:
**name type updated selected column**
dbo.E_MAST user table no yes ID
dbo.E_MAST user table no yes E_NO
dbo.E_MAST user table no yes E_SAL
我需要这个结果:
**name type updated selected column**
dbo.E_MAST user table no yes ID
dbo.E_MAST user table no yes E_NO
dbo.E_MAST user table no yes E_SAL
dbo.E_MAST user table no yes E_ACTIVE
答案 0 :(得分:1)
sp_depends
存储过程用于
显示有关数据库对象依赖关系的信息,例如依赖于表或视图的视图和过程,以及视图或过程所依赖的表和视图。
因此,它可以正确识别存储过程所依赖的所有列。 E_ACTIVE
是别名,它不是数据库对象,因此不能依赖它。
您还可以查看此问题及其答案:Retrieve column definition for stored procedure result set,了解如何获取有关存储过程的元数据。