插入查询出错:语法错误在“,”附近

时间:2017-03-20 07:56:09

标签: postgresql insert

我的插入查询是,

insert into app_library_reports  
  (app_id,adp_id,reportname,description,searchstr,command,templatename,usereporttemplate,reporttype,sentbothfiles,useprevioustime,usescheduler,cronstr,option,displaysettings,isanalyticsreport,report_columns,chart_config)
values
 (25,18,"Report_Barracuda_SpamDomain_summary","Report On Domains Sending Spam Emails","tl_tag:Barracuda_spam AND action:2","BarracudaSpam/Report_Barracuda_SpamDomain_summary.py",,,,,,,,,,,,);

表'app_library_reports'的架构是:

                                                   Table "public.app_library_reports"
      Column       |  Type   |                            Modifiers                             | Storage  | Stats target | Description
-------------------+---------+------------------------------------------------------------------+----------+--------------+-------------
 id                | integer | not null default nextval('app_library_reports_id_seq'::regclass) | plain    |              |
 app_id            | integer |                                                                  | plain    |              |
 adp_id            | integer |                                                                  | plain    |              |
 reportname        | text    |                                                                  | extended |              |
 description       | text    |                                                                  | extended |              |
 searchstr         | text    |                                                                  | extended |              |
 command           | text    |                                                                  | extended |              |
 templatename      | text    |                                                                  | extended |              |
 usereporttemplate | boolean |                                                                  | plain    |              |
 reporttype        | text    |                                                                  | extended |              |
 sentbothfiles     | text    |                                                                  | extended |              |
 useprevioustime   | text    |                                                                  | extended |              |
 usescheduler      | text    |                                                                  | extended |              |
 cronstr           | text    |                                                                  | extended |              |
 option            | text    |                                                                  | extended |              |
 displaysettings   | text    |                                                                  | extended |              |
 isanalyticsreport | boolean |                                                                  | plain    |              |
 report_columns    | json    |                                                                  | extended |              |
 chart_config      | json    |                                                                  | extended |              |
Indexes:
    "app_library_reports_pkey" PRIMARY KEY, btree (id)
Foreign-key constraints:
    "app_library_reports_adp_id_fkey" FOREIGN KEY (adp_id) REFERENCES app_library_adapter(id)
    "app_library_reports_app_id_fkey" FOREIGN KEY (app_id) REFERENCES app_library_definition(id)

当我执行插入查询时,它会给出错误:ERROR:语法错误在“,”

附近

请帮我找出这个错误。谢谢。

1 个答案:

答案 0 :(得分:0)

我相当肯定您的即时错误来自于,,,,,,,末尾出现的空字符串(即INSERT)。如果您不想为特定列指定值,则可以传递NULL作为值。但在您的情况下,由于您只指定前6列的值,另一种方法是在插入时指定这6列名称:

INSERT INTO app_library_reports
    (app_id, adp_id, reportname, description, searchstr, command)
VALUES
    (25, 18, 'Report_Barracuda_SpamDomain_summary',
     'Report On Domains Sending Spam Emails', 'tl_tag:Barracuda_spam AND action:2',
     'BarracudaSpam/Report_Barracuda_SpamDomain_summary.py')

此插入只有在未指定的列接受NULL时才有效。如果其他一些列不可为空,那么您必须为它们传入值。