我需要在表中插入带有日期时间的数据和下面给出的查询:
Insert into TABLE (ITEM_NUMBER,ORGANIZATION_CODE,RECORD_STATUS,FILE_DESCRIPTION,ATTACHMENT_CATEGORY,FILE_NAME,TRANSACTION_TYPE,FILE_PATH,LAST_UPDATE_DATE,CREATION_DATE,RECORD_ID) values (10000,org,NEW,wre,Item Internal,ZPDF001_1.pdf,CREATE,/media/,TO_CHAR('07-Jan-24 20:00:21','DD-MON-YY:HH24:MI:SS'),TO_CHAR('07-Jan-24 20:00:21','DD-MON-YY:HH24:MI:SS'),'602')
它抛出错误:第 243 列缺少逗号。我也尝试了 TO_DATE。也没有用。
问题似乎出在
TO_CHAR
函数格式上。正确的格式应为“DD-MON-YY HH24:MI:SS”,“YY”和“HH24”之间不带冒号。所以正确的查询应该是:
Insert into TABLE (ITEM_NUMBER,ORGANIZATION_CODE,RECORD_STATUS,FILE_DESCRIPTION,ATTACHMENT_CATEGORY,FILE_NAME,TRANSACTION_TYPE,FILE_PATH,LAST_UPDATE_DATE,CREATION_DATE,RECORD_ID) values (10000,org,NEW,wre,Item Internal,ZPDF001_1.pdf,CREATE,/media/,TO_CHAR('07-Jan-24 20:00:21','DD-MON-YY HH24:MI:SS'),TO_CHAR('07-Jan-24 20:00:21','DD-MON-YY HH24:MI:SS'),'602')
您可以在此处查看 Oracle 文档中的
TO_CHAR
函数:链接
您正在使用 TO_CHAR 将日期转换为字符串,在这种情况下您要尝试插入日期,因此必须使用 TO_DATE: 你能试试这个吗:
INSERT INTO TABLE (
ITEM_NUMBER,
ORGANIZATION_CODE,
RECORD_STATUS,
FILE_DESCRIPTION,
ATTACHMENT_CATEGORY,
FILE_NAME,
TRANSACTION_TYPE,
FILE_PATH,
LAST_UPDATE_DATE,
CREATION_DATE,
RECORD_ID
) VALUES (
10000,
'org',
'NEW',
'wre',
'Item Internal',
'ZPDF001_1.pdf',
'CREATE',
'/media/',
TO_DATE('07-Jan-24 20:00:21', 'DD-MON-YY HH24:MI:SS'),
TO_DATE('07-Jan-24 20:00:21', 'DD-MON-YY HH24:MI:SS'),
'602'
);
或者日期格式也可能有问题!