【发布时间】:2021-05-06 04:18:50
【问题描述】:
我真的需要你的帮助,我以前使用 tdbsp(存储过程),但现在我需要使用 tdbrow 来执行插入其中一个 oracle 表作为工作流程的一部分。
插入语句中的某些列是整数和日期,这是导致问题的原因并引发错误,如“无效数字”和其他内容等。我能够管理它的字符串部分,但真的麻烦在于 INTEGER 数据类型,如果我缺少成功插入所需的任何引号,你们中的任何人都可以指导我吗?
我将 fileID 获取为 Integer 并将其存储在 tjava 行的全局变量中:
globalMap.put("CFILEID", input_row.FILEID);
现在我在 TDBROW 组件中使用它:
FILEID,DIRIRD,LOADID 存储为
号码 在 ORACLE 数据类型和 FILE_DATE 存储为
日期 在 ORACLE 中。如何转换为所需的格式?
insert into table_file
(
fileid, dirid, loadid, file_name, file_date,file_size,
)
values
(" +"\""+
((Integer)globalMap.get("CFILEID")) +","+ //FILEID
NULL+","+ (kept it null for testing purpose) //DIRID
NULL+","+ ///LOADID
((String)globalMap.get("CFILE_NAME")) +","+//FILENAME
to_date(i_file_date,'dd-mon-yyyy hh24:mi:ss'),//FILEDATE ?????
NULL+","+ //FILESIZE
)
ORACLE 插入命令如下:
values (file_seq.nextval,
l_dirid,
l_loadid,
i_file_name,
to_date(i_file_date,'dd-mon-yyyy hh24:mi:ss'),
i_file_size)
如何专门针对从 JAVA 到 ORACLE 的 INTEGER 和 DATE 数据类型进行处理?
任何帮助或意见将不胜感激,感谢您的宝贵时间!
【问题讨论】:
标签: java oracle type-conversion talend abstract-data-type