oracle:
select * from all_tables;系統裡有許可權的表select * from dba_tables; 系統表
select * from user_tables; 當前使用者下的表
sql server
1,利用sysobjects系統表 在這個表中,在資料庫中建立的每個物件(例如約束、預設值、日誌、規則以及儲存過程)都有對應一行,我們在該表中篩選出xtype等於u的所有記錄,就為資料庫中的表了。 示例語句如下::
select * from sysobjects where xtype='u'
注意:在sql server2005中,出現了sys.objects目錄檢視來代替sysobjects系統表,我們在sql server2005及以後的版本中,可以使用sysobjects系統表與sys.objects目錄檢視的任意物件來查詢所有表。
2,利用sys.tables目錄檢視 sys.tables目錄檢視,為每個表物件返回一行. 示例語句如下:
select * from sys.tables
注意:sys.tables目錄檢視也只有在sql server2005及以上的版本中才能使用。
3,利用儲存過程sp_tables sp_tables儲存過程,可返回可在當前環境中查詢的物件列表。這代表可在from子句中出現的任何物件。 我們可以執行如下語句:
exec sp_tables
在結果集中篩選出所有table_type等於table的記錄就是表資訊了。
利用SQL語句重置資料庫中所有表的標識列 自增量
可以應用於2種場景 1.清空所有表中的資料,資料清空後,最好是能夠讓表中的標識列從1開始記數,所以要重置標識列的當前值。2.用複製的方式,發布訂閱同步資料之後,訂閱端的資料不會自動增長,比如自增id該9527了,但如果中間有跳過的id,會自動填充缺失的路過的id,該執行如下 即可從應該的9527開始...
查詢資料庫中所有列名
如何從整個資料庫所有表中查詢出乙個列名?比如想要查詢乙個名為 name 的列名,但是忘記了這一列是在那乙個表中,需要從整個資料庫的所有表中進行查詢。oracle 資料庫 select from user col comments s where s.column name like name mys...
SQL語句 查詢資料庫中所有非系統表的資訊
select case when a.colorder 1 then d.name else end 表名,a.colorder 字段序號,a.name 欄位名,case when columnproperty a.id,a.name,isidentity 1 then else end 標識,ca...