Мне очень нужна ваша помощь, раньше я использовал tdbsp (сохраненный процесс), но теперь мне нужно использовать tdbrow для выполнения вставки в одну из таблиц оракула как часть рабочего процесса.
Некоторые из столбцов в операторе вставки представляют собой целые числа и дату, что является причиной проблемы и выдает ошибку, такую как недопустимое число и другие вещи и т. д. Я могу управлять строковой частью, но на самом деле проблема заключается в типе данных 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)
Как справиться с этим специально для типа данных INTEGER и DATE из JAVA в ORACLE?
Любая помощь или вклад будут полностью оценены, спасибо за ваше время!