之前在做專案的過程中,有時候需要重置一下資料庫中所有表中都存在的一些相同字段,如果表少的話還可以手動更新一下,一旦表的數量過多就會變得麻煩,因此自己寫了乙個適用於oracle資料庫的sql指令碼,可以先迴圈遍歷出資料庫中的所有表,然後拿著表名迴圈,進行動態sql的執行。
我這裡需要進行的操作是將所有表中,列名為created_by,created_date,last_modified_by,last_modified_by的列更新為null,**和執行結果如下。
declare sqls varchar (32760) ;
begin
for table_name in (
select
table_name
from
user_tab_columns
where
column_name = 'created_by'
) loop
sqls := (
'update ' || table_name.table_name || ' set created_by = null, created_date = null, last_modified_by = null, last_modified_date = null'
) ;execute immediate sqls ;
dbms_output.put_line (sqls) ;
end loop ;
dbms_output.put_line ('更新結束!') ;
end ;
執行結果如下:
如何獲取Mysql資料庫中所有表名
歡迎加入bim行業開發交流1群 群號 711844216 小夥伴們在使用資料庫時,有時候不止需要訪問其中的乙個表,而是多個表,這個時候就需要首先獲取資料庫中的表名,然後迴圈讀取表了。sql語句 show tables from 資料庫名 using system using system.colle...
查詢資料庫中所有的表
select from sysobjects where xtype u 查詢當前資料庫下所有使用者建立的表 xtype char 2 物件型別。可以是下列物件型別中的一種 c check 約束 d 預設值或 default 約束 f foreign key 約束 l 日誌 fn 標量函式 if 內...
清空SQL Server資料庫中所有表資料的方法
原文 清空sql server資料庫中所有表資料的方法 其實刪除資料庫中資料的方法並不複雜,為什麼我還要多此一舉呢,一是我這裡介紹的是刪除資料庫的所有資料,因為資料之間可能形成相互約束關係,刪除操作可能陷入死迴圈,二是這裡使用了微軟未正式公開的sp msforeachtable儲存過程。也許很多讀者...