如何修复此查询?我得到一个“缺少逗号”的错误。
INSERT INTO Vehicle
VALUES (
'0001',
'01234567890123451',
Toy,
Prius,
TO_DATE('2020', 'YYYY'),
26,000,
5,800,
to_date('03-15-2020','mm-dd-yyy'),
10a
);发布于 2021-03-17 01:15:52
字符串两边需要单引号。此外,我建议使用日期字面量:
Insert into Vehicle
values ('0001', '01234567890123451', 'Toy', 'Prius', date '2020-01-01', 26, 000, 5, 800, date '2020-03-15', '10a');我假设26,000和5,800实际上都是两列。如果它们是一个,则删除逗号。
在2020年,表达式TO_DATE('2020', 'YYYY')似乎是获取任意月份的第一天的一种笨拙的方式。只要使用显式的date值即可。
我还强烈建议您为insert显式列出列。这是防止意外和难以调试的错误的一种方法。
发布于 2021-03-17 05:47:21
通过消除(并猜测您的表的布局)的过程,我能够确定“缺少逗号”错误是由10a周围缺少单引号/撇号字符引起的。我创建了一个VEHICLE表,它试图模仿您的表(尽管字段名可能不同),当我用单引号将10a括起来时,错误从ORA-00917: missing comma变为ORA-00913: too many values。查询的完全更正版本可能是:
INSERT INTO Vehicle
VALUES (
'0001',
'01234567890123451',
'Toy',
'Prius',
TO_DATE('2020', 'YYYY'),
26000,
5800,
to_date('03-15-2020','mm-dd-yyyy'),
'10a'
);https://stackoverflow.com/questions/66660091
复制相似问题