如何在SQL Server 2008中描述表格?

28 浏览
0 Comments

如何在SQL Server 2008中描述表格?

我想用SQL Server 2008中的DESC命令来描述一个表,就像在Oracle中可以做的那样。

我有一个表[EX].[dbo].[EMP_MAST],我想要描述它,但是无法成功。

显示的错误信息是:

对象'EMP_MAST'在数据库'master'中不存在或对于此操作无效。

0
0 Comments

问题原因:用户想要了解如何在SQL Server 2008中描述表格,但是不清楚如何使用sp_help内置过程来实现。

解决方法:用户可以使用sp_help内置过程来描述表格。如果需要进一步限定表格名称,可以使用以下格式:

- sp_help "[SchemaName].[TableName]"

- sp_help "[InstanceName].[SchemaName].[TableName]"

使用上述格式后,用户将能够获得关于表格的详细信息。

0
0 Comments

如何在SQL Server 2008中描述表?

根据这个文档:

DESC MY_TABLE等价于

SELECT column_name "Name", nullable "Null?",

concat(concat(concat(data_type,'('),data_length),')') "Type" FROM

user_tab_columns WHERE table_name='TABLE_NAME_TO_DESCRIBE';

我已经大致为你翻译成了SQL Server的等价语句,只需要确保在EX数据库上运行。

SELECT column_name AS [name],

IS_NULLABLE AS [null?],

DATA_TYPE + COALESCE('(' + CASE WHEN CHARACTER_MAXIMUM_LENGTH = -1

THEN 'Max'

ELSE CAST(CHARACTER_MAXIMUM_LENGTH AS VARCHAR(5))

END + ')', '') AS [type]

FROM INFORMATION_SCHEMA.Columns

WHERE table_name = 'EMP_MAST'

感谢你...这个方法很好...非常感谢...但是关于" sp_columns "我有一个问题...为什么在这里不能使用它?

你是什么意思为什么在这里不能使用它?运行exec sp_columns EMP_MAST应该返回相同的信息,只是格式不同。而且你也不能选择从存储过程中返回哪些列!

0
0 Comments

如何在SQL Server 2008中描述表?

在SQL Server 2008中,可以使用系统存储过程sp_columns来描述表的结构。执行以下代码可以获得表的描述信息:

exec sp_columns TableName

此外,还可以使用系统存储过程sp_help来获取表的描述信息。执行以下代码可以获得表的结构信息:

sp_help TableName

sp_columns可以显示主表结构,例如TABLEVIEWER、TABLEOWNER等信息。

0