如何同時更新資料庫中所有表的相同字段

2021-08-08 11:32:59 字數 870 閱讀 2374

之前在做專案的過程中,有時候需要重置一下資料庫中所有表中都存在的一些相同字段,如果表少的話還可以手動更新一下,一旦表的數量過多就會變得麻煩,因此自己寫了乙個適用於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儲存過程。也許很多讀者...