SQL的初学者,我目前无法运行此插入基本命令。
insert into Project(ProjId,MedicName,Purpose,Start_date,End_date,PI_Id)
insert into Project values('PR003','Medic3','lung','01-Nov-14','31-DEC-20','10101');
第2行出现错误:
ORA-00926:缺少VALUES关键字
答案 0 :(得分:1)
您的语法错误。您需要写一条语句:
insert into Project(ProjId,MedicName,Purpose,Start_date,End_date,PI_Id)
values('PR003','Medic3','lung','01-Nov-14','31-DEC-20','10101');
答案 1 :(得分:0)
除了错误的语法(您已经被告知)外,该表中的某些列似乎是DATE
数据类型,我建议您不要在其中输入字符串,而要输入日期。因为'01-Nov-14'
和'31-DEC-20'
都是字符串。
不要依赖Oracle的隐式转换。只要它现在 now 可行,它迟早就会失败(当NLS设置更改时),不一定在此数据库上,而是在其他数据库上。例如,您的值将不适合我的数据库,因为我的格式以及语言和语言都不同(我们不使用英文名称)。掌控一切。
您可以
start_date
)TO_DATE
函数与适当的格式掩码一起使用(下面的end_date
)类似这样的东西:
INSERT INTO project (projid,
medicname,
purpose,
start_date,
end_date,
pi_id)
VALUES ('PR003',
'Medic3',
'lung',
DATE '2014-11-01', --> this
TO_DATE('31.12.2020', 'dd.mm.yyyy'), --> this
'10101');