23/07/08

Retrieve column from SQL Server Table

Can Use
select column_name, data_type, character_maximum_length from information_schema.columnswhere table_name = 'myTable'

or


DECLARE @tablename varchar(100)
SET @tablename = N'myTable'
SELECTclmns.name AS [Name],usrt.name AS [DataType],ISNULL(baset.name, N'') AS [SystemType],CAST(CASE WHEN baset.name IN (N'nchar', N'nvarchar') AND clmns.max_length <> -1 THEN
clmns.max_length/2 ELSE clmns.max_length END AS int) AS [Length],CAST(clmns.precision AS int) AS [NumericPrecision]
FROM
sys.tables AS tblINNER JOIN sys.all_columns AS clmns ON clmns.object_id=tbl.object_id
LEFT OUTER JOIN sys.types AS usrt ON usrt.user_type_id = clmns.user_type_idLEFT OUTER JOIN sys.types AS baset ON baset.user_type_id = clmns.system_type_id and baset.user_type_id = baset.system_type_id
WHERE(tbl.name=@tablename and SCHEMA_NAME(tbl.schema_id)=N'dbo')
ORDER BYclmns.column_id ASC


I've tried with SQL Server 2005 and 2000 and worked well

Sem comentários: