開發人員常用的Oracle技術

2021-08-31 22:00:19 字數 4519 閱讀 8737

參考:

1)將資料庫test完全匯出,使用者名稱system 密碼manager 匯出到d:\daochu.dmp中

expsystem/manager@test file=d:\daochu.dmp full=y

2)將資料庫中system使用者與sys使用者的表匯出

expsystem/manager@test file=d:\daochu.dmp owner=(system,sys)

3)將資料庫中的表inner_notify、notify_staff_relat匯出

expaichannel/aichannel@testdb2 file= d:\datanewsmgnt.dmp tables=(inner_notify,notify_staff_relat) 

4)將資料庫中的表table1中的字段filed1以"00"打頭的資料匯出

expsystem/manager@test file=d:\daochu.dmp tables=(table1) query=" where filed1 like '00%'"

1)將d:\daochu.dmp 中的資料匯入 test資料庫中。

impsystem/manager@test  file=d:\daochu.dmp

impaichannel/aichannel@test  full=y  file=d:\datanewsmgnt.dmp ignore=y

上面可能有點問題,因為有的表已經存在,然後它就報錯,對該錶就不進行匯入。

在後面加上ignore=y 就可以了

2)將d:daochu.dmp中的表table1 匯入

impsystem/manager@test  file=d:\daochu.dmp  tables=(table1)

create tablespace tblsms

datafile 'd:/oracle/product/10.2.0/oradata/shenhq/tblsms.dbf' size 5m reuse

autoextend on next 10m maxsize unlimited

extent management local autoallocate

/

create tablespace tblsms

autoextend on next 10m maxsize unlimited

extent management local autoallocate

/

-- create the user

create user [user_name]

identified by "[user_name]"

default tablespace [default_tablespace_name]

temporary tablespace [temp_tablespace_name]

profile default;

-- grant/revoke role privileges

grant dba to [user_name];

-- grant/revoke system privileges

grant insert any table to [user_name];

grant select any table to [user_name];

grant update any table to [user_name];

grant unlimited tablespace to [user_name];

不會寫pl/sql不叫會用oracle

spool .[log_name].log

prompt

prompt creating procedure [procedure_name]

prompt

create or replace procedure [procedure_name]

issql_code varchar2(50);

sql_errm varchar2(100);

cursor [cur_name] is

;v_cnt number;

begin

v_cnt := 0;

for v_instanceservice in [cur_name] loop

begin

;v_cnt := v_cnt + 1;

if mod(v_cnt, 10000) = 0 then

commit;

end if;

exception

when others then

sql_code := sqlcode;

sql_errm := sqlerrm;

dbms_output.put_line(sql_code || ' ' || sql_errm ||

' at servicestr ' ||

v_instanceservice.servicestr);

end;

end loop;

commit;

dbms_output.put_line('total is:' || v_cnt);

end;

/spool off

create or replace function [function_name]([parameters_name] [parameters_type])

return varchar2 is

v_result varchar2(100);

begin

v_result := null;

return v_result;

end [function_name];

create or replace procedure alter_table is

v_count number;

begin

select count(*)

into v_count

from user_tab_columns u

where u.table_name = [表名]

and (u.column_name = [欄位名,如果多個用or拼接條件]);

if v_count < 1 then

execute immediate '[增加欄位的alter指令碼]';

end if;

commit;

end;

/exec alter_table;

drop procedure alter_table;

create or replace procedure adjust_seq_value_prc

is sql_code varchar2(50);

sql_errm varchar2(100);

cursor cur_get_seq_info is

select us.sequence_name, us.last_number, us.increment_by, us.cache_size

from user_sequences us

where us.sequence_name not in

('[sequence_name]', '[sequence_name]', ......);

begin

for v_get_seq_info in cur_get_seq_info loop

begin

execute immediate 'alter sequence ' || v_get_seq_info.sequence_name ||

' increment by [number_want_to_add] nocache';

execute immediate 'select ' || v_get_seq_info.sequence_name ||

'.nextval from dual'

execute immediate 'alter sequence ' || v_get_seq_info.sequence_name ||

' increment by ' || v_get_seq_info.increment_by ||

' nocache';

exception

when others then

sql_code := sqlcode;

sql_errm := sqlerrm;

dbms_output.put_line(sql_code || ' ' || sql_errm);

end;

end loop;

end;

/

(有新知新得再補充,待續……)

IT開發人員

其路五 轉行到市場 絞盡腦汁的想想,我所知道的人之中只有兩個開發人員去了市場,這兩個人都不能說是朋友,認識而已。他們都是主動要求去了市場,結果是這兩個人均在市場都是乾到一年左右,然後都自已開公司了。呵呵,很奇怪,極高的轉行成功率!不過仔細想想,我對這兩個人的思路佩服的五體投地。能下決心仍掉每月5 6...

開發人員常用DOS命令

tip 首先需要使用快捷鍵 win r 開啟執行介面,輸入cmd,調出命令提示符 dir檢視當前目錄的檔案和資料夾 cd進入特定目錄 cls清屏 ping後跟ip位址,位址均可,t表示不聽的傳送資料報 telnet以字元方式遠端登入程式 ipconfig顯示當前的網路介面狀態,all,flushdn...

開發人員必讀

對於剛開始學習軟體開發的新人來說,必備技能 往往意味著乙個長長的 標有重要度的學習列表,但是過長的列表通常會導致新人不知如何開始學習,壓力倍增。本文嘗試列舉出最重要的幾個技能,也期望通過此列表能給新人乙個比較明確的學習重點和路徑。沒有掌握任何一門程式語言,就不可能成為一名程式設計人員。許多程式設計師...