SQLServer查詢所有數(shù)據(jù)庫名和表名及表結(jié)構(gòu)等代碼示例
1、查詢所有數(shù)據(jù)庫名
SELECT name FROM sysdatabases
2、查詢當(dāng)前數(shù)據(jù)庫中所有表名,不用指定數(shù)據(jù)庫,選中某數(shù)據(jù)庫直接執(zhí)行SQL就好
-- 'U':所有用戶表名; 'S':所有系統(tǒng)表名;'V':所有視圖表名 SELECT name FROM sysobjects WHERE xtype='U' OR xtype='S' OR xtype='V'
3、獲取指定表的主鍵字段
SELECT name AS 'PK' FROM SysColumns WHERE id=Object_Id('Table') AND colid=(SELECT TOP 1 keyno FROM sysindexkeys WHERE id=Object_Id('Table'))
4、查詢指定表中的所有字段名
SELECT name FROM SysColumns WHERE id=Object_Id('Table_2')
5、查詢指定表中的所有字段名和字段類型
SELECT sc.name,st.name FROM SysColumns sc,systypes st WHERE sc.xtype=st.xtype AND sc.id in(SELECT id from sysobjects WHERE xtype='U' AND name='Table')
6、獲取表部分?jǐn)?shù)據(jù)結(jié)構(gòu)
SELECT c.name, c.user_type_id, c.max_length, c.is_nullable, remark = ex.value FROM sys.columns c LEFT OUTER JOIN sys.extended_properties ex ON ex.major_id = c.object_id AND ex.minor_id = c.column_id AND ex.name = 'MS_Description' WHERE OBJECTPROPERTY(c.object_id, 'IsMsShipped')=0 AND OBJECT_NAME(c.object_id) = 'Table' ORDER BY OBJECT_NAME(c.object_id), c.column_id
7、SqlServer2000獲取表結(jié)構(gòu)詳細(xì)信息
SELECT TBL.name AS '表名', CONVERT(NVARCHAR(500),DSPTN.value) AS '表說明', COL.column_id AS '字段序號', COL.name AS '字段名', CASE WHEN COL.is_identity = 1 THEN 'YES' ELSE 'NO' END AS '標(biāo)識(shí)', CASE WHEN PK.object_id IS NOT NULL AND PK.index_id = COL.column_id THEN 'YES' ELSE 'N0' END AS '主鍵', TY.name AS '類型', CAST(COL.max_length AS VARCHAR) AS '占用字節(jié)數(shù)', CAST(COL.precision AS VARCHAR) AS '長度', CAST(COL.scale AS VARCHAR) AS '小數(shù)位數(shù)', CASE WHEN COL.is_nullable = 1 THEN 'YES' ELSE 'NO' END AS '允許空', ISNULL(CONVERT(NVARCHAR(500), DFTCNST.definition), '') AS '默認(rèn)值', CONVERT(NVARCHAR(500),SCOLMS.value) AS '字段說明' FROM sys.tables TBL INNER JOIN sys.columns COL ON TBL.object_id = COL.object_id LEFT JOIN sys.identity_columns IDCOL ON TBL.object_id = IDCOL.object_id AND COL.column_id = IDCOL.column_id LEFT JOIN sys.types TY ON COL.user_type_id = TY.user_type_id LEFT JOIN ( SELECT name, object_id, index_id FROM sys.indexes WHERE is_primary_key = 1 ) PK ON TBL.object_id = PK.object_id LEFT JOIN sys.default_constraints DFTCNST ON COL.default_object_id = DFTCNST.object_id LEFT JOIN sys.extended_properties SCOLMS ON COL.object_id = SCOLMS.major_id AND COL.column_id = SCOLMS.minor_id AND SCOLMS.name = 'MS_Description' LEFT JOIN sys.extended_properties DSPTN ON TBL.object_id = DSPTN.major_id AND DSPTN.minor_id = 0 AND DSPTN.name = 'MS_Description' WHERE TBL.name = 'table' ORDER BY TBL.name, COL.column_id
8、SqlServer2000以上獲取表結(jié)構(gòu)詳細(xì)信息
SELECT TBL.name AS '表名', CONVERT(NVARCHAR(500),DSPTN.value) AS '表說明', COL.column_id AS '序號', COL.name AS '字段名', CASE WHEN COL.is_identity = 1 THEN 'YES' ELSE 'NO' END AS '標(biāo)識(shí)', CASE WHEN PK.object_id IS NOT NULL AND PK.index_id = COL.column_id THEN 'YES' ELSE 'N0' END AS '主鍵', TY.name AS '類型', CAST(COL.max_length AS VARCHAR) AS '占用字節(jié)數(shù)', CAST(COL.precision AS VARCHAR) AS '長度', CAST(COL.scale AS VARCHAR) AS '小數(shù)位數(shù)', CASE WHEN COL.is_nullable = 1 THEN 'YES' ELSE 'NO' END AS '允許空', ISNULL(CONVERT(NVARCHAR(500), DFTCNST.definition), '') AS '默認(rèn)值', CONVERT(NVARCHAR(500),SCOLMS.value) AS '字段說明' FROM sys.tables TBL INNER JOIN sys.columns COL ON TBL.object_id = COL.object_id LEFT JOIN sys.identity_columns IDCOL ON TBL.object_id = IDCOL.object_id AND COL.column_id = IDCOL.column_id LEFT JOIN sys.types TY ON COL.user_type_id = TY.user_type_id LEFT JOIN ( SELECT name, object_id, index_id FROM sys.indexes WHERE is_primary_key = 1 ) PK ON TBL.object_id = PK.object_id LEFT JOIN sys.default_constraints DFTCNST ON COL.default_object_id = DFTCNST.object_id LEFT JOIN sys.extended_properties SCOLMS ON COL.object_id = SCOLMS.major_id AND COL.column_id = SCOLMS.minor_id AND SCOLMS.name = 'MS_Description' LEFT JOIN sys.extended_properties DSPTN ON TBL.object_id = DSPTN.major_id AND DSPTN.minor_id = 0 AND DSPTN.name = 'MS_Description' WHERE TBL.name = 'table' ORDER BY TBL.name, COL.column_id
總結(jié)
到此這篇關(guān)于SQLServer查詢所有數(shù)據(jù)庫名和表名及表結(jié)構(gòu)等的文章就介紹到這了,更多相關(guān)SQLServer查詢所有表名表結(jié)構(gòu)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SQL Server怎么找出一個(gè)表包含的頁信息(Page)
這篇文章主要給大家介紹了關(guān)于SQL Server是如何找出一個(gè)表包含的頁信息(Page)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用SQL Server具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10MySQL 和 SQL Server之間的數(shù)據(jù)遷移方法小結(jié)
遷移MySQL數(shù)據(jù)到SQL Server可以通過多種方法實(shí)現(xiàn),本文主要介紹了MySQL 和 SQL Server之間的數(shù)據(jù)遷移方法小結(jié),使用 SSMS和SQL SSIS工具,感興趣的可以了解一下2024-04-04一步步教你建立SQL數(shù)據(jù)庫的表分區(qū)
分區(qū)存儲(chǔ)提高了數(shù)據(jù)庫的性能,被分區(qū)存儲(chǔ)的數(shù)據(jù)物理上是多個(gè)文件,但邏輯上任然是一個(gè)表,對表的任何操作都跟沒分區(qū)之前一樣。插入、刪除、查詢、更新等操作的時(shí)候,數(shù)據(jù)庫會(huì)自動(dòng)為你找到對應(yīng)的分區(qū),然后執(zhí)行操作。2015-09-09SqlServer參數(shù)化查詢之where in和like實(shí)現(xiàn)之xml和DataTable傳參介紹
在上一篇Sql Server參數(shù)化查詢之where in和like實(shí)現(xiàn)詳解中介紹了在Sql Server使用參數(shù)化查詢where in的幾種實(shí)現(xiàn)方案,遺漏了xml和表值參數(shù),這里做一個(gè)補(bǔ)充2012-05-05SQL優(yōu)化經(jīng)驗(yàn)總結(jié)
這篇文章主要內(nèi)容是SQL優(yōu)化經(jīng)驗(yàn)總結(jié),文章對SQL優(yōu)化進(jìn)行了詳細(xì)介紹,需要的朋友可以參考下2015-08-08sql函數(shù) REGEXP_REPLACE的使用方法小結(jié)
假設(shè)您的數(shù)據(jù)在正文中有不必要的空格,您希望用單個(gè)空格來替換它們,利用REPLACE函數(shù) ,這篇文章給大家介紹sql函數(shù) REGEXP_REPLACE的使用方法小結(jié),感興趣的朋友一起看看吧2023-11-11sql server創(chuàng)建臨時(shí)表的兩種寫法和刪除臨時(shí)表
這篇文章主要介紹了sql server創(chuàng)建臨時(shí)表的兩種寫法和刪除臨時(shí)表 ,需要的朋友可以參考下2015-07-07SQL Server2008數(shù)據(jù)庫導(dǎo)入導(dǎo)出兼容性處理方案
SQL Server 的高版本數(shù)據(jù)庫恢復(fù)到低版本則可能會(huì)有兼容性問題,下面為大家介紹的是如何解決此類問題2014-05-05