对于各种流行的数据库系统,如何列出表中的所有列?


当前回答

我知道已经很晚了,但是我在Oracle上使用这个命令:

select column_name,data_type,data_length from all_tab_columns where TABLE_NAME = 'xxxx' AND OWNER ='xxxxxxxxxx'

其他回答

在MS SQL Server中调用以下代码:

sp_columns [tablename]

对于mssql Server:

select COLUMN_NAME from information_schema.columns where table_name = 'tableName'

SQL Server

SELECT 
    c.name 
FROM
    sys.objects o
INNER JOIN
    sys.columns c
ON
    c.object_id = o.object_id
AND o.name = 'Table_Name'

or

SELECT 
    COLUMN_NAME 
FROM 
    INFORMATION_SCHEMA.COLUMNS
WHERE 
    TABLE_NAME  = 'Table_Name'

第二种方法是ANSI标准,因此应该适用于所有符合ANSI标准的数据库。

Oracle (PL/SQL)

SELECT column_name
FROM user_tab_cols
WHERE table_name = 'myTableName'

MySQL

SHOW COLUMNS FROM table_name

对于MySQL,使用:

DESCRIBE name_of_table;

这也适用于Oracle,只要你使用SQL*Plus,或Oracle的SQL Developer。