伙计们,我正在使用sql server 2000并执行sp_columns存储过程来获取表的布局。我的一个字段是公式字段,我的问题是,如何通过sp_列确定它?sp_列似乎不显示此信息。
提前谢谢

最佳答案

您可以将sp_列的结果转储到临时表中,然后将ColumnProperty函数添加到该表的结果中…

create table #results(
    TABLE_QUALIFIER sysname,
    TABLE_OWNER sysname,
    TABLE_NAME sysname,
    COLUMN_NAME sysname,
    DATA_TYPE smallint,
    TYPE_NAME sysname,
    PRECISION int,
    LENGTH int,
    SCALE smallint,
    RADIX smallint,
    NULLABLE smallint,
    REMARKS varchar(254),
    COLUMN_DEF nvarchar(4000),
    SQL_DATA_TYPE smallint,
    SQL_DATETIME_SUB smallint,
    CHAR_OCTET_LENGTH int,
    ORDINAL_POSITION int,
    IS_NULLABLE varchar(254),
    SS_DATA_TYPE tinyint)

insert  #results
exec sp_columns 'MyTable'

select  IsComputed = ColumnProperty(object_id(table_owner + '.' + table_name), column_name, 'IsComputed'),
        *
from    #results

10-06 08:51