[SQL] MSSQL,Oracle如何找出所有Table?
MSSQL
--登入的帳號在目前資料庫中可以存取的資料表
SELECT * FROM Information_Schema.TABLES
--登入的帳號在目前資料庫中可以存取的欄位
SELECT * FROM Information_Schema.COLUMNS
參考來源1有提供其他可以存取的資訊。
Oracle
--登入的帳號在目前資料庫中可以存取的DBA的資料表
SELECT * FROM DBA_TABLES
--登入的帳號在目前資料庫中可以存取的所有的資料表
SELECT * FROM ALL_TABLES
--登入的帳號在目前資料庫中可以存取的自己的資料表
SELECT * FROM USER_TABLES
參考來源2有詳細的說明這三個表的差異
Oracle Synonym
部份情況下,如果無法使用上面指令查到資料庫的TABLE名稱,可以嘗試用Oracle Synonym 進行搜尋
記得加Where 條件!!!!!!!!!!
--登入的帳號在目前資料庫中可以存取的DBA的資料表
SELECT * FROM DBA_SYNONYM
--登入的帳號在目前資料庫中可以存取的所有的資料表
SELECT * FROM ALL_SYNONYM
--登入的帳號在目前資料庫中可以存取的自己的資料表
SELECT * FROM USER_SYNONYM
與每個人,一起分享所學到,所用到的,
若有錯誤,請您不吝指教,謝謝大家。