close
範例:
A資料庫的資料要抄到B資料庫裡
採用的方式是
A資料庫 寫SP程式,透過Link Server寫入B資料庫,資料量約五萬筆,花費五至七分鐘
語法調校
SP程式只有一個日期的WHERE條件,在A資料庫執行約1秒即SELECT完成
測試解決方式
1.因為A資料庫的Select語法裡有call Function,故先Select 出來寫入A資料庫的 Temp檔
再由A資料庫的Temp檔,寫入B資料庫的Table中,無效。
2.因為B資料庫的Table有五百萬筆資料,認為是TABLE太大的問題,但是因為該TABLE無KEY,所以應該不是該問題
由A資料庫寫入B資料庫的Temp Table後,再由Temp Table寫入真正的Table中,無效。
解決方式
- 把程式放在B資料庫的那台,回來讀A資料庫的資料,這樣速度會加快
- A資料庫使用BCP的方式,因為BCP的做法也是登入B資料庫反向回來讀A資料庫的資料,這樣速度會加快
- 透過程式的方式先從A資料庫把資料讀出來,再寫入B資料庫中。
全站熱搜