oracle數(shù)據(jù)更改后出錯(cuò)怎么做
來源:易賢網(wǎng) 閱讀:681 次 日期:2014-10-21 14:20:53
溫馨提示:易賢網(wǎng)小編為您整理了“oracle數(shù)據(jù)更改后出錯(cuò)怎么做”,方便廣大網(wǎng)友查閱!

我們給系統(tǒng)創(chuàng)建了兩個(gè)用戶:com和comtest。前者存放的是正式庫(kù)數(shù)據(jù),后者存放的測(cè)試庫(kù)數(shù)據(jù)。它們都有一個(gè)taw_rm_user表,存放了使用該系統(tǒng)的用戶基本信息,我就是把其中的password字段全部改成了123456。

dmp備份文件是9月28號(hào)創(chuàng)建的,經(jīng)過十一七天長(zhǎng)假后到今天,已經(jīng)有十幾天了,我簡(jiǎn)單的查了一下日志,發(fā)現(xiàn)已經(jīng)創(chuàng)建了幾個(gè)新的用戶,并且有些舊的用戶的其他信息也已經(jīng)更改了。直接把備份文件中的taw_rm_user表導(dǎo)入com用戶下是肯定不行的。經(jīng)過一段時(shí)間的冷靜思考后,得到了一個(gè)解決方案。大致思路是:

1. 將測(cè)試庫(kù)的taw_rm_user表用create table as語(yǔ)句導(dǎo)到一個(gè)臨時(shí)的備份表中(測(cè)試庫(kù)中的用戶表也不能亂改);

2. 再將taw_rm_user表刪除;

3. 然后將dmp備份文件的taw_rm_user表用imp命令導(dǎo)入到comtest下;

4. 再自己編寫一個(gè)pl/sql程序塊,通過使用游標(biāo)循環(huán),將這個(gè)新導(dǎo)入的表中的password字段更新到com.taw_rm_user表的對(duì)應(yīng)記錄中。注意,這里只更新對(duì)應(yīng)記錄,對(duì)新加入的用戶記錄不作任何修改;

5. 再將之前備份的taw_rm_user表恢復(fù)到comtest下即可。

其中使用的兩段關(guān)鍵語(yǔ)句如下:

-- 備份測(cè)試庫(kù)中的taw_rm_user表

create table comtest.taw_rm_user_bak

as

select * from comtest.taw_rm_user

-- 恢復(fù)正式庫(kù)中的taw_rm_user.password字段

declare

rec_comtest comtest.taw_rm_user%rowtype;

cursor cur_comtest is

select * from comtest.taw_rm_user;

begin

open cur_comtest;

loop

fetch cur_comtest into rec_comtest;

exit when cur_comtest%notfound;

update com.taw_rm_user

set com.taw_rm_user.password=rec_comtest.password

where com.taw_rm_user.user_id=rec_comtest.user_id;

end loop;

close cur_comtest;

commit;

end;

這樣就可以在不更改其他所有信息的情況下,將所有舊用戶的密碼恢復(fù)到從前。

更多信息請(qǐng)查看IT技術(shù)專欄

更多信息請(qǐng)查看數(shù)據(jù)庫(kù)
易賢網(wǎng)手機(jī)網(wǎng)站地址:oracle數(shù)據(jù)更改后出錯(cuò)怎么做
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

2025國(guó)考·省考課程試聽報(bào)名

  • 報(bào)班類型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)