2013-02-14 194 views
0

我正在兩個數據庫之間移動一些數據,並取得了很大的成功,但後來遇到了一個問題,正在做同樣的查詢。Oracle錯誤,在數據庫之間移動數據

查詢:

INSERT INTO [email protected] SELECT * FROM INTERNET.WEBSECURITY; 

的錯誤:

ORA-06502: PL/SQL: numeric or value error: character string buffer too small 

什麼,這可能是任何想法?

回答

2

您正嘗試爲plsql變量分配一個值,該變量不夠大或比列數據類型大。

+0

因此,它可能是一個人的ID爲1-10,下一個以ID的40-80開始,這會破壞序列? 有什麼辦法可以解決這個問題嗎? – Solid1Snake1 2013-02-14 21:16:22

+0

它可以。爲了能夠得到具體的答案,您應該提供有關您的案例的更多詳細信息。如果身份證號碼不匹配,請嘗試轉換數據,如果轉換無關緊要。但我的建議是,提供更多細節使得更容易得到更具體的答案。 – 2013-02-14 21:30:07

+1

得到它解決,禁用觸發器,防止我正在嘗試做什麼,更新序列以開始下一個數字,並重新啓用觸發器。謝謝 – Solid1Snake1 2013-02-14 21:41:28

0

另外:分配/插入非數字值到數值變量/列。 可能您的表列在數據類型和大小上有點不同。我的例子中沒有看到任何變量。