通过SQL语句获取表和列的定义

时间:2013-10-25 11:58:35

标签: sql sql-server-2008

我有一个数据库,里面有很多表。我在每个表和列的定义部分写了定义。现在使用查询我想查看所有表和列的定义。

你能帮帮我吗?

5 个答案:

答案 0 :(得分:1)

如果您正在使用SqlServer。

SELECT obj.name, cols.name as columnname
from dbname.sys.objects as obj
inner join dbname.sys.columns as cols
on obj.object_id = cols.object_id
where obj.type='U'

答案 1 :(得分:1)

这是一个低音查询,可以列出SQL Server中列和表的信息。只需从每个系统表中添加所需的列。

SELECT 
  t.name table_name,
, c.name column_name
From sys.tables AS t
Inner Join sys.columns c 
  On t.Object_ID = c.Object_ID

答案 2 :(得分:1)

尝试这样在SQL中获取表的定义......

  

sp_help'tableName'

示例sp_help 'MyTable'

我们也可以做同样的事情

exec sp_help 'MyTable'

因为 sp_help 是预定义存储的处理器,我们可以使用“ exec ”关键字执行存储的处理器,也可以使用“执行“关键字

答案 3 :(得分:0)

试试这个:

SELECT * FROM INFORMATION_SCHEMA.COLUMNS

OR

获取更详细的表格信息

EXEC sp_help [Your Table_Name]

答案 4 :(得分:0)

如果您正在寻找扩展说明:

SELECT 
  OBJECT_NAME(major_id) TableName,(select name from sys.columns c where c.object_id=major_id and c.column_id=minor_id) ColumnName,*
FROM 
  sys.extended_properties
WHERE 
  name='MS_Description' AND minor_id>0 and class=1