㈠ 怎麼批量往oracle資料庫中造大量的數據
那要看你需要什麼類型的數據了。
最簡單的,寫一個存儲過程,在里頭添加一個insert,循環個 大量 次數。
如果存在其他表中有大量數據的,也可以
insert 新表 select from 其他表。
注意一下欄位類型。
㈡ ORACLE存儲過程批量未編譯
對存儲過程中用到的表進行過alter處理
譬如你對存儲過程中用到的表a,加了一個欄位,雖然對存儲過程中整體內容不影響,但是alter處理後,你會發現,這些存儲過程變成未編譯通過的了,這個時候只要重新編譯一下就行,當然也有alter後,存儲過程編譯不過去的情況,這個時候你就需要重新寫里邊的內容了
㈢ ORACLE EBS如何批量開PR
根據什麼批量開PR?
PR可以新建多行PR行,然後你可以把每一條PR行,分別創建成一張采購訂單。
㈣ oracle如何批量編譯包體
alterpackageusername.xxxxcompilebody;
語法如上
㈤ oracle存儲過程怎樣批量插入新數據
需要生成的SQL
insert into TMP_UPSTATE_CASEKEY values('TMP0000001', 1, sysdate);
存儲過程實現
create or replace procere proc_casekey_upstate
as
casekey char(14);
begin
for i in 1..10000000 loop
casekey := 'TMP'||lpad(i,7,0); -- TMP0000001
insert into TMP_UPSTATE_CASEKEY values(casekey, 1, sysdate);
end loop;
commit;
end;
begin
proc_casekey_upstate();
end;
測試發現生成一千萬條數據用了14分鍾左右,性能還是可以了,如果先去掉TMP_NUM_STATUS_ID的外鍵估計更快。
或者:
insert into TMP_UPSTATE_CASEKEY select 'TMP'||LPAD(rownum,7,0),1,sysdate from al connect by level <= 1000000;
㈥ oracle中如何批量編譯視圖和存儲過程
1.批量編譯存儲工程的存儲過程
create or replace procere compile_invalid_proceres(
p_owner varchar2 -- 所有者名稱,即 SCHEMA) as--編譯某個用戶下的無效存儲過程
str_sql varchar2(200);begin
for invalid_proceres in (select object_name from all_objects
where status = 'INVALID' and object_type = 'PROCEDURE' and owner=upper(p_owner))loop
str_sql := 'alter procere ' ||invalid_proceres.object_name || ' compile';begin
execute immediate str_sql;exception
--When Others Then Null;
when OTHERS Then
dbms_output.put_line(sqlerrm);end;end loop;end;
2.批量編譯視圖的存儲過程
㈦ oracle中如何批量編譯視圖和存儲過程
再用個存儲過程把這些步驟全寫下來, 寫個job讓他每天晚上定時執行一次
㈧ oracle資料庫如何編譯sqc文件
//通過編寫的連接類創建一個連接
dbconn db = new dbconn();
Connection con1 = db.conn;
String callSQL1 = new String();
ResultSet rs1 = null;
//創建一個CallableStatement變數st1來調用存儲過程信息
CallableStatement st1 = null;
try {
st1 = con1.prepareCall("{ call p(?,?,?,?) }");
st1.setString(1, "參數1");
st1.setString(2, "參數2");
st1.setString(3, "參數3");
st1.registerOutParameter(4,Types.INTEGER); //此處4 代表第一個"?" 則表示存儲過程返回的值 這里要注意Types的類型,當需要有返回值時
st1.execute();
System.out.println(st1.getInt(4));//輸出存儲過程的返回值,當有返回值時
} catch (Exception error) {
try {
con1.rollback(); //操作不成功則回退
} catch (Exception ex9) {
ex9.printStackTrace();
}
out.print("系統出錯" + error.getMessage());
} finally {
try {
if (st1 != null) {
st1.close();
}
} catch (Exception error) {
}
db.disconnect();
}
㈨ 如何在Oracle中重編譯所有無效的存儲過程
:在SQL_PLUS中:spool ExecCompProc.sql select 'alter procere ' ||object_name||' compile;' From all_objects where status = 'INVALID' and object_type = 'PROCEDURE'; spool off @ExecCompProc.Sql;整理成一個存儲過程:Create Or Replace Procere Zl_Compile_Invalid_Procere AsStrsql Varchar2(200);BeginFor x In (Select Object_Name From All_Objects Where Status = 'INVALID' And Object_Type = 'PROCEDURE') LoopStrsql := 'Alter Procere ' || x.Object_Name || ' Compile';Begin Execute Immediate Strsql; Exception--When Others Then Null; When OTHERS Then dbms_output.put_line(Sqlerrm); End;End Loop;End;最後執行:exec Zl_Compile_Invalid_Procere;如果要看到無法重編譯的過程的出錯信息,需要執行前設置set serverout on。
㈩ oracle中自定義的函數怎麼編譯
可在第三方軟體中,如pl/sql中編譯。
1、打開pl/sql軟體並登錄到指定資料庫。
2、點擊左上方像紙片的按鈕,然後點擊「sql窗口」