Для различных популярных систем баз данных, как вы перечисляете все столбцы в таблице?
Как перечислить все столбцы в таблице?
Ответ 1
Для MySQL используйте:
DESCRIBE name_of_table;
Это также работает для Oracle, если вы используете SQL * Plus или Oracle SQL Developer.
Ответ 2
Для Oracle (PL/SQL)
SELECT column_name
FROM user_tab_cols
WHERE table_name = 'myTableName'
Для MySQL
SHOW COLUMNS FROM table_name
Ответ 3
Для MS SQL Server:
select * from information_schema.columns where table_name = 'tableName'
Ответ 4
Я знаю это поздно, но я использую эту команду для Oracle:
select column_name,data_type,data_length from all_tab_columns where TABLE_NAME = 'xxxx' AND OWNER ='xxxxxxxxxx'
Ответ 5
(5 лет подряд, для Почета PostgreSQL, самого продвинутого DDBB Королевства)
В PostgreSQL:
\d table_name
Или, используя SQL:
select column_name, data_type, character_maximum_length
from INFORMATION_SCHEMA.COLUMNS
where table_name = 'table_name';
Ответ 6
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'
или же
SELECT
COLUMN_NAME
FROM
INFORMATION_SCHEMA.COLUMNS
WHERE
TABLE_NAME = 'Table_Name'
Второй способ - это стандарт ANSI, поэтому он должен работать со всеми базами данных, совместимыми с ANSI.
Ответ 7
MS SQL Server:
sp_columns [tablename]
Ответ 8
Microsoft SQL Server Management Studio 2008 R2:
В редакторе запросов, если вы выделите текст имени таблицы (например, dbo.MyTable) и нажмете ALT + F1, вы получите список имен столбцов, типа, длины и т.д.
ALT + F1 пока вы выделили dbo.MyTable
- это эквивалент запуска EXEC sp_help 'dbo.MyTable'
соответствии с этим сайтом
Я не могу заставить работать варианты INFORMATION_SCHEMA.COLUMNS, поэтому я использую это вместо этого.
Ответ 9
Для SQL Server
sp_help tablename
Ответ 10
SQL Server
Чтобы просмотреть все пользовательские таблицы базы данных:
use [databasename]
select name from sysobjects where type = 'u'
Чтобы перечислить все столбцы таблицы:
use [databasename]
select name from syscolumns where id=object_id('tablename')
Ответ 11
Просто небольшая коррекция для остальных в SQL Server (префикс схемы становится все более важным!):
SELECT name
FROM sys.columns
WHERE [object_id] = OBJECT_ID('dbo.tablename');
Ответ 12
Пример:
select Table_name as [Table] , column_name as [Column] , Table_catalog as [Database], table_schema as [Schema] from information_schema.columns
where table_schema = 'dbo'
order by Table_name,COLUMN_NAME
Только мой код