"ORA-00917: missing comma" 是什么意思?

What does "ORA-00917: missing comma" mean?

下面是我的插入脚本,它是我的 table 脚本的一部分。我在 row/column 上收到一条错误消息,指出我在 4'x8 所在的位置缺少一个逗号。我不确定在哪里插入逗号以按照我需要的方式执行脚本。

INSERT INTO PRODUCT VALUES ('WR3/TT3', 'Steel matting, 4'x8'x1/6", .5" mesh', '17-Jan-12', 18, 5, '119.95', '0.10', 25595);

Error starting at line : 27 in command - INSERT INTO PRODUCT VALUES ('WR3/TT3', 'Steel matting, 4'x8'x1/6", .5" mesh', '17-Jan-12', 18, 5, '119.95', '0.10', 25595) Error at Command Line : 27 Column : 58 Error report - SQL Error: ORA-00917: missing comma 00917. 00000 - "missing comma" *Cause:
*Action:

实际上,您确实遇到了单引号问题。您在维度中使用了单引号而没有转义它们:

Steel matting, 4'x8'x1/6", .5" mesh
                ^^^^^ unescaped single quotes

要在单引号字符串中转义单引号,您可以将它们加倍 ''。这应该适用于 MySQL 或 Oracle。

INSERT INTO PRODUCT
VALUES ('WR3/TT3', 'Steel matting, 4''x8''x1/6", .5" mesh', '17-Jan-12', 18, 5, '119.95', '0.10', 25595);

q'[ 可以在这里使用 'quotes']' 对我有用。

我尝试在下面插入:

INSERT INTO SITE(SITE_ID,SITE_NAME,SITE_DESC,LIS_SITE_ID,LIS_MODIFIED_DATE,IS_DEFAULT) VALUES (hibernate_sequence.nextval, 'Dawns lab', 'Pat's lab', 0, SYSDATE,'Y');

但是正在投掷

SQL Error: ORA-00917: missing comma

但修改为:INSERT INTO SITE(SITE_ID,SITE_NAME,SITE_DESC,LIS_SITE_ID,LIS_MODIFIED_DATE,IS_DEFAULT) VALUES (hibernate_sequence.nextval, q'[Dawns lab]', q'[Pat's lab]', 0, SYSDATE,'Y');

对我有用。谢谢!!!