1. Query all database names in the database:
SELECT Name from Master. sysdatabases ORDER by Name
2. Query all the table names in a database:
SELECT name from SysObjects Where xtype= ' U ' ORDER by Name
3. Query table structure information:
SELECT (case if A.colorder=1 then d.name else null end) Table name,
A.colorder field ordinal, a.name field name,
(Case if ColumnProperty (a.id,a.name, ' isidentity ') =1 then ' √ ' else ' end) is identified,
(SELECT count (*) from sysobjects
WHERE (name in (SELECT name from sysindexes
WHERE (id = a.id) and (Indid in
(SELECT indid from Sysindexkeys
WHERE (id = a.id) and (Colid in
(SELECT colid from syscolumns WHERE (id = a.id) and (name = A.name)))))))
and (xtype = ' PK ') >0 then ' √ ' else ' end) primary key, B.name type, A.length takes up the number of bytes,
ColumnProperty (a.id,a.name, ' PRECISION ') as length,
IsNull (ColumnProperty (a.id,a.name, ' scale '), 0) as decimal place, (case time a.isnullable=1 then ' √ ' else ' end) allows null,
IsNull (E.text, ') default value, IsNull (G.[value], ") as [description]
From Syscolumns A
Left join Systypes B on A.xtype=b.xusertype
INNER JOIN sysobjects D on a.id=d.id and d.xtype= ' U ' and d.name<> ' dtproperties '
Left join syscomments E on a.cdefault=e.id
Left joins Sys.extended_properties G on a.id=g.major_id and a.colid=g.minor_id
Left join Sys.extended_properties F on D.id=f.class and f.minor_id=0
Where b.name is not null
--where d.name= ' table to query '--if you only query the specified table, add this condition
ORDER BY A.id,a.colorder
How SQL Server gets the names of all the tables in a database, the names of all the fields in a table