varias una tablas tabla sentencia obtener nombres listar las estructura ejemplos desde datos consultas condiciones con columnas sql mysql sql-server database oracle

una - where con 3 condiciones sql



¿Cómo hago una lista de todas las columnas en una tabla? (12)

Para los diversos sistemas de bases de datos populares, ¿cómo se enumeran todas las columnas en una tabla?


(5 años más tarde, para el Honor de PostgreSQL, el DDBB más avanzado del Reino)

En PostgreSQL:

/d table_name

O bien, usando SQL:

select column_name, data_type, character_maximum_length from INFORMATION_SCHEMA.COLUMNS where table_name = ''table_name'';


Ejemplo:

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

Solo mi código


MS SQL Server:

sp_columns [nombre de tabla]


Microsoft SQL Server Management Studio 2008 R2:

En un editor de consultas, si resalta el texto del nombre de la tabla (ex dbo.MyTable) y pulsa ALT + F1 , obtendrá una lista de nombres de columna, tipo, longitud, etc.

ALT + F1 mientras ha resaltado dbo.MyTable es el equivalente a ejecutar EXEC sp_help ''dbo.MyTable'' según este sitio

No puedo obtener las variaciones para consultar INFORMATION_SCHEMA.COLUMNS, así que uso esto en su lugar.


Para MS SQL Server:

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


Para MySQL / Oracle, use:

DESCRIBE name_of_table;


Para Oracle (PL / SQL)

SELECT column_name FROM user_tab_cols WHERE table_name = ''myTableName''

Para MySQL

SHOW COLUMNS FROM table_name


Para SQL Server

sp_help tablename


Sé que es tarde, pero uso este comando para Oracle:

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


Solo una ligera corrección en los demás en SQL Server (¡el prefijo del esquema se está volviendo más importante!):

SELECT name FROM sys.columns WHERE [object_id] = OBJECT_ID(''dbo.tablename'');


servidor SQL

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

o

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

La segunda forma es un estándar ANSI y, por lo tanto, debería funcionar en todas las bases de datos compatibles con ANSI.


servidor SQL

Para enumerar todas las tablas definidas por el usuario de una base de datos:

use [databasename] select name from sysobjects where type = ''u''

Para enumerar todas las columnas de una tabla:

use [databasename] select name from syscolumns where id=object_id(''tablename'')