通過指令碼,更改表結構(不同的資料庫,更新語句不同,請注意)
oracle資料庫:
alter table tb_md_task add (pk_dept varchar2(20))
sqlserver資料庫
alter table tb_md_task add pk_dept nvarchar(20)
由於資料表中新增字段,所以以前的任務表中pk_dept這個欄位是null,如果主體是部門的話,需要手動將任務的pk_dept欄位填上,填的值與表中pk_planent值一樣,這樣才能保證找到審批流;
oracle資料庫:
update tb_md_task t set t.pk_dept= (select b.pk_dept from org_dept b where t.pk_planent=b.pk_dept ) where exists(select 1 from org_dept b where t.pk_planent=b.pk_dept)
sqlserver資料庫
update tb_md_task set pk_dept = o.pk_dept from org_dept as o where o.pk_dept = tb_md_task.pk_planent
批量更新資料表
幾天中午系統中斷了幾分鐘,原因是資料庫down了。當時發現系統中有大量的鎖,幾乎都是來自生產使用者的,被鎖的物件和語句都是平時每天都要千百次使用的。為什麼會出現這麼大面積的鎖,原因到現在都還沒弄明白。只是事後回憶起大量的鎖中有條update的語句,是有個同事在批量更新資料,而是是關聯了其他表的更新 ...
mysql 批量更新 MySQL批量更新
我有2個表 mysql data details accounts invoices 理想情況下,每個data details都應具有accounts invoices id.data details有乙個帶有accounts invoices主鍵的外來鍵 由於某種原因,有data details記...
用儲存過程批量更新表
下面這個和我的很相似,不用自己寫了,就用他的吧!最近做了乙個需求,需要批量更新資料庫 表,但是因為涉及到的資料較多 千萬條 如果直接用sql更新,估計會把pl sql弄垮 sql如下 update online product set online flag 0 where status on 所以...