iT邦幫忙

0

MSSQL查詢指定資料庫之所有資料表

  • 分享至 

  • xImage

我想查詢指定資料庫之所有資料表

我目前語法是這個

select * from INFORMATION_SCHEMA.Tables

但查詢結果都是系統資料庫的資料表而不是我想找的資料庫
https://ithelp.ithome.com.tw/upload/images/20211109/20110132nrlJrGZE4Y.jpg

我想請問該如何查詢呢?

石頭 iT邦高手 1 級 ‧ 2021-11-09 11:55:41 檢舉
你可以使用過濾條件...找到你要的資料表 `table_catalog` 另外你查詢的 DataBase是否正確
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

1
bsexp301479
iT邦新手 3 級 ‧ 2021-11-09 12:00:08
最佳解答
select * from [資料庫名稱].INFORMATION_SCHEMA.Tables

參考一下

tenno081 iT邦研究生 4 級 ‧ 2021-11-09 13:06:31 檢舉

謝謝。

IF EXISTS( select * from sys.databases
WHERE name = '資料庫名稱')
select * from [資料庫名稱].INFORMATION_SCHEMA.Tables

如果有需要先確認資料庫是否存在可使用這段查詢語法
不然查詢到不存在的資料庫就會報錯

1
player
iT邦大師 1 級 ‧ 2021-11-09 21:39:56

以前我查目前資料庫有哪些使用者資料表
用這樣
select name from [sysobjects] where type='U'
如果微軟沒改掉的話

至於列舉資料庫名稱
select name from sys.databases
where not name in ('master','tempdb','model','msdb')
order by name

我要發表回答

立即登入回答