Oracle - ORA-00917:缺少逗号

时间:2018-03-08 17:02:35

标签: sql oracle

INSERT INTO contact(id, org_name, street_address1, street_address2,  
   city, state, postal_code, country_code, last_name, first_name,
   person_title, phone_country_code, phone_area-code, phone_number, email, created_time)
VALUES(20, 'cognizant', 'chennai', 'ckc',
   'tamilnadu', '092345', '0934', 'Edwin', 'Michael',
   'MR', 09, 10, '0924242', 'edwin@seic.com', 09824);

当我尝试执行上面的代码时,我收到以下错误:

  

第1行的错误:ORA-00917:缺少逗号

3 个答案:

答案 0 :(得分:2)

  • 我认为列名phone_area-codephone_area_codehyphen不能用于列名)
  • 最后一个值应引用为'09824'

  • 值列表包含15项,而列名列表包含16

答案 1 :(得分:1)

您错过了state的值。如果您没有值,则必须将其作为空字符串''NULL传递:

INSERT INTO contact(id, org_name, street_address1, street_address2,  
   city, state, postal_code, country_code, last_name, first_name,
   person_title, phone_country_code, phone_area-code, phone_number, email, created_time)
VALUES(20, 'cognizant', 'chennai', 'ckc',
   'tamilnadu', '', '092345', '0934', 'Edwin', 'Michael',
   'MR', 09, 10, '0924242', 'edwin@seic.com', 09824);

答案 2 :(得分:0)

您的列数为16,但您的数据只是您插入的15.您在那里缺少一个值,只需输入单引号'',表示缺少的值或您不想输入任何内容的值。