sql server:获得列的默认值
问题描述:
我执行select来获取表的结构。 我想获得像它的名字列信息,或者如果它为空,或者如果它的主键.. 我做这样的事情sql server:获得列的默认值
....sys.columns c...
c.precision,
c.scale,
c.is_nullable as isnullable,
c.default_object_id as columndefault,
c.is_computed as iscomputed,
但默认值我得到这样的454545454但是id..something我想获得值“xxxx”。什么是要搜索的表格或什么是将该id转换为值的函数。 感谢
答
你可以这样做(做一个SELECT *,所以您可以看到所有可用的信息):
SELECT *
FROM INFORMATION_SCHEMA.COLUMNS
WHERE....
这包括在结果是“COLUMN_DEFAULT”一栏。
答
使用
Select * From INFORMATION_SCHEMA.COLUMNS
有一个叫COLUMN_DEFAULT
答
'账单' 列是一个示例表
select
COLUMN_DEFAULT --default
,IS_NULLABLE -- is nullable
,NUMERIC_PRECISION --number of digits (binary or decimal depending on radix)
,NUMERIC_PRECISION_RADIX --decimal places
,NUMERIC_SCALE --number of digits to right of decimal point
,COLUMNPROPERTY(OBJECT_ID('bills'),COLUMN_NAME,'Iscomputed') AS ISCOMPUTED --is computed
from INFORMATION_SCHEMA.columns where TABLE_name='bills'
select * from INFORMATION_SCHEMA.TABLE_CONSTRAINTS where TABLE_NAME='bills' and CONSTRAINT_TYPE='PRIMARY KEY'
这原本说NUMERIC_RADIX是十进制的数地方。这是不正确的。基数是存储值的数字系统的基数(2或10)。 NUMERIC_PRECISION是存储数字的总数(十进制或二进制数,取决于基数),NUMERIC_SCALE是小数点右侧的位数 – 2013-05-02 14:11:20