我正在构建将数据从DB2复制到Oracle的脚本。我的表包含BLOB类型的字段。
源服务器和目标服务器没有直接通信。我在可以与DB2和Oracle服务器通信的Windows服务器上执行脚本。
这是我的源表的结构:
CREATE TABLE UPROF.INFO_TAB (
num_info char (5) NOT NULL,
dat_info date NOT NULL,
img_info blob NOT NULL,
tms_info timestamp NOT NULL);
我使用DB2数据读取器来选择我放入dr(Output DataReader)中的数据,这是我的查询:
SELECT num_info,VARCHAR_FORMAT(dat_info,'DD-Mon-YYYY'), VARCHAR_FORMAT(tms_info,'DD-Mon-YYYY HH.MI.SS.FF AM')AS tms_info, img_info来自UPROF.INFO_TAB,仅供只读;
在While循环中,我读了dr来建立我的请求Insert:
sql +“立即执行q'[插入DPROF.INFO_TAB (num_info,dat_info,tms_info,img_info)值 ('“” + dr.item(0).tostring +“','”“ + dr.item(1).tostring +”','“ + dr.item(2).tostring +”','“ + dr.item( “” img_info“”)+“')]';”
2018-07-11 14:11:36-执行查询:立即开始执行 q'{插入DPROF.INFO_TAB(num_info,dat_info,tms_info,img_info) 值('564','2011年1月18日,'2011年6月5日12.25.55.229000 PM',dr.item(“ img_info”))}';;立即执行“提交”;结束; 2018-07-11 14:11:36-执行查询时发生异常:ORA-01008: 并非所有变量都绑定ORA-06512:在第1行上2018-07-11 14:11:36- 执行OraclePLSQLActivity时出错:ORA-01008:并非所有变量 绑定ORA-06512:在第1行
我不知道是否必须在选择请求或插入请求时强制转换blob字段。
该脚本可以使用vb.net语言的功能。
感谢您的帮助。