获取M$ SQL Server用户表的字段信息
2010-11-03 09:07
513 查看
1 USE database1
2 SELECT
3 表名 = CASE a.colorder WHEN 1 THEN c.name ELSE '' END,
4 序 = a.colorder,
5 字段名 = a.name,
6 标识 = CASE COLUMNPROPERTY(a.id,a.name,'IsIdentity') WHEN 1 THEN '√' ELSE '' END,
7 主键 = CASE
8 WHEN EXISTS (
9 SELECT *
10 FROM sysobjects
11 WHERE xtype='PK' AND name IN (
12 SELECT name
13 FROM sysindexes
14 WHERE id=a.id AND indid IN (
15 SELECT indid
16 FROM sysindexkeys
17 WHERE id=a.id AND colid IN (
18 SELECT colid
19 FROM syscolumns
20 WHERE id=a.id AND name=a.name
21 )
22 )
23 )
24 )
25 THEN '√'
26 ELSE ''
27 END,
28 类型 = b.name,
29 字节数 = a.length,
30 长度 = COLUMNPROPERTY(a.id,a.name,'Precision'),
31 小数 = CASE ISNULL(COLUMNPROPERTY(a.id,a.name,'Scale'),0)
32 WHEN 0 THEN ''
33 ELSE CAST(COLUMNPROPERTY(a.id,a.name,'Scale') AS VARCHAR)
34 END,
35 允许空 = CASE a.isnullable WHEN 1 THEN '√' ELSE '' END,
36 默认值 = ISNULL(d.[text],''),
37 说明 = ISNULL(e.[value],'')
38 FROM syscolumns a
39 LEFT JOIN systypes b ON a.xtype=b.xusertype
40 INNER JOIN sysobjects c ON a.id=c.id AND c.xtype='U' AND c.name<>'dtproperties'
41 LEFT JOIN syscomments d ON a.cdefault=d.id
42 LEFT JOIN sysproperties e ON a.id=e.id AND a.colid=e.smallid
相关文章推荐
- 获取M$ SQL Server用户表的字段信息
- 获取M$ SQL Server用户表的字段信息 (转)
- 获取M$ SQL Server用户表的字段信息
- oracle获取当前用户表、字段等详细信息SQL
- 无法获取有关Windows NT 组\用户‘组\用户’的信息,错误代码0x5(Microsoft SQL Server,错误:15404)
- DB2获取当前用户表、字段详细信息SQL
- 获取MS SqlServer 2000中字段的备注信息
- oracle获取当前用户表、字段详细信息SQL
- DLINQ(LINQ to SQL)之用户自定义函数、在不同的DataContext之间做更新、缓存、获取信息、数据加载选项和延迟加载
- 获取MSSQL 表结构中字段的备注、主键等信息的sql
- SQL 获取表字段属性、注释信息等
- 预报在线:发送短信中,对用户登录的判断和区分一般信息快报和重大信息快报,以选取不同的sql获取不同的用户;
- SqlServer中获取当前会话链接的客户端信息及触发器有关注意事项
- 步步为营VS 2008 + .NET 3.5(13) - DLINQ(LINQ to SQL)之用户自定义函数、在不同的DataContext之间做更新、缓存、获取信息、数据加载选项和延迟加载
- Sql :获取数据库所有表及其字段名称、类型、长度 (也可以指定单张或若干张表的详细信息。。。)
- SQLServer EVENTDATA()函数来获取DDL 触发器信息
- sql 获取某数据库中所有的用户表名和某表中的所有字段
- DB2获取当前用户表、字段、索引等详细信息