Getting list of tables, and fields in each, in a database Getting list of tables, and fields in each, in a database sql sql

Getting list of tables, and fields in each, in a database


Is this what you are looking for:

Using OBJECT CATALOG VIEWS

 SELECT T.name AS Table_Name ,       C.name AS Column_Name ,       P.name AS Data_Type ,       P.max_length AS Size ,       CAST(P.precision AS VARCHAR) + '/' + CAST(P.scale AS VARCHAR) AS Precision_ScaleFROM   sys.objects AS T       JOIN sys.columns AS C ON T.object_id = C.object_id       JOIN sys.types AS P ON C.system_type_id = P.system_type_idWHERE  T.type_desc = 'USER_TABLE';

Using INFORMATION SCHEMA VIEWS

  SELECT TABLE_SCHEMA ,       TABLE_NAME ,       COLUMN_NAME ,       ORDINAL_POSITION ,       COLUMN_DEFAULT ,       DATA_TYPE ,       CHARACTER_MAXIMUM_LENGTH ,       NUMERIC_PRECISION ,       NUMERIC_PRECISION_RADIX ,       NUMERIC_SCALE ,       DATETIME_PRECISIONFROM   INFORMATION_SCHEMA.COLUMNS;

Reference : My Blog - http://dbalink.wordpress.com/2008/10/24/querying-the-object-catalog-and-information-schema-views/


Tables ::

SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE'

columns ::

SELECT * FROM INFORMATION_SCHEMA.COLUMNS 

or

SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='your_table_name'


Get list of all the tables and the fields in database:

Select *From INFORMATION_SCHEMA.COLUMNSWhere TABLE_CATALOG Like 'DatabaseName'

Get list of all the fields in table:

Select *From INFORMATION_SCHEMA.COLUMNSWhere TABLE_CATALOG Like 'DatabaseName' And TABLE_NAME Like 'TableName'