Oracle Apex执行INSERT语句报ORA-00917: missing comma错误求助
问题根因
报错的核心问题出在INSERT语句VALUES子句的phone_number字段取值上:
你编写的650.124.0000未添加单引号,Oracle会将其识别为数值类型,但数值语法不允许存在2个小数点,SQL解析器识别到非法格式时会误判为此处缺失逗号,因此抛出ORA-00917错误。
修复方案
根据字段类型选择对应修改方式即可:
- 若
phone_number为字符串类型(电话号码默认推荐使用字符串存储,避免前缀0丢失、特殊符号无法存储等问题),给对应取值添加单引号:
INSERT INTO employees (employee_id, first_name, last_name, phone_number, job_id, salary, department_id) VALUES (500, 'Alicia', 'Santos', '650.124.0000', 'MK_ASST', 10000, 20);
- 若
phone_number确实为数值类型,删除取值中的小数点,修改为合法数值格式:
INSERT INTO employees (employee_id, first_name, last_name, phone_number, job_id, salary, department_id) VALUES (500, 'Alicia', 'Santos', 6501240000, 'MK_ASST', 10000, 20);
内容的提问来源于stack exchange,提问作者Jackson
相关产品推荐
相关产品推荐

