SQLSERVER 如何查询某表某字段的数据类型,想好久了,有时间的朋友麻烦告知下,多谢!
解决方案 »
- 自定义函数在SQL语句中,记录多时运行就很慢,有时会超时退出,请问怎么处理?
- 非常好的会员软件源代码!!!
- 问个简单得不得了的问题!~ 有奖抢答.. 哈哈
- 分组后如何写返回与分组的相关其它字段。
- ER图中多个实体之间的属性有相关关系怎么办
- 帮忙看一下,怎么写sql 排序
- 数据库转移复制!
- 抢分的好机会!!!------有关VB开发数据库的一个问题!!!!
- tpcc值的计算(高手请进)
- Binding information is invalid--哪位大佬能解答一下?
- 求大神指点,关于数据库两表比对的语句
- mssql里表A,B里面分别存储了rdate,area,phonenum,表A存储订购,表B存储退订信息。
SELECT
表名 = CASE WHEN A.COLORDER=1 THEN D.NAME ELSE '' END,
表备注 = CASE WHEN A.COLORDER=1 THEN ISNULL(F.VALUE,'') ELSE '' END,
列序号 = A.COLORDER,
列名称 = A.NAME,
标识 = CASE WHEN COLUMNPROPERTY(A.ID,A.NAME,'ISIDENTITY')=1 THEN '√ ' ELSE '' END,
主键 = CASE WHEN EXISTS(SELECT 1 FROM SYSOBJECTS WHERE XTYPE='PK' AND PARENT_OBJ=A.ID AND NAME IN (
SELECT NAME FROM SYSINDEXES WHERE INDID IN(
SELECT INDID FROM SYSINDEXKEYS WHERE ID=A.ID AND COLID=A.COLID))) THEN '√' ELSE '' END,
类型 = B.NAME,
字节 = A.LENGTH,
长度 = COLUMNPROPERTY(A.ID,A.NAME,'PRECISION'),
小数位 = ISNULL(COLUMNPROPERTY(A.ID,A.NAME,'SCALE'),0),
允许空 = CASE WHEN A.ISNULLABLE=1 THEN '√ 'ELSE '' END,
默认值 = ISNULL(E.TEXT,''),
列备注 = ISNULL(G.[VALUE],'')
FROM
SYSCOLUMNS A
LEFT JOIN SYSTYPES B ON A.XUSERTYPE=B.XUSERTYPE
INNER JOIN SYSOBJECTS D ON A.ID=D.ID AND D.XTYPE='U ' --AND D.NAME<>'DTPROPERTIES'
LEFT JOIN SYSCOMMENTS E ON A.CDEFAULT=E.ID
LEFT JOIN sys.extended_properties G ON A.ID=G.major_id AND A.COLID=G.minor_id
LEFT JOIN sys.extended_properties F ON D.ID=F.major_id AND F.minor_id=0
where D.NAME='Employee' --查询这个表
AND A.name = 'id' --查询这个字段
ORDER BY A.ID,A.COLORDER
from syscolumns a
inner join sysobjects b on a.id=b.id
inner join systypes c on a.xtype=c.xtype