2011-11-29 80 views
0

我有這種外部Oracle存儲過程,它將INTEGER,CLOB,VARCHAR作爲參數,並在執行時向表中插入記錄。這將使用由JAVA + Spring組成的dao層來調用。使用CLOB添加多個數據

我被要求使用相同的程序插入多個記錄(1000)。所以我正在考慮編寫一個接受String或Clob的pl/sql塊,並在調用該過程的循環中使用子字符串。爲此,我必須爲每個記錄附加一個帶刪除表的字符串,並將其作爲參數傳遞,或者我可以從該字符串創建一個CLOB並將其作爲參數傳遞。 如:String param ="value1,value2,value3 | value1,value2,value3 | value1,value2,value3 ..etc"

我的問題是:

  1. 難道還有比一個更好的解決方案我在想什麼(因爲我覺得這是更好地循環播放的DB服務器內,而不是在DAO層循環和做數千次數據庫調用)?

  2. 如果我繼續使用我的解決方案,是否會有一些限制阻止我的努力,比如我可以傳遞給pl/sql塊的數據大小?

回答