Postgres sql insert query syntax error from phpPgAdmin

早过忘川 提交于 2019-11-26 12:16:28

问题


Trying to execute a standard insert query, but it doesn\'t work.

INSERT INTO users (vk_id, eu_name, eu_society, eu_notes, eu_want_team)
VALUES (\"123123133\",\"Eu name\",\"Eu society\",\"Eu notes\",\"true\")

The error I get is the following:

ERROR:  syntax error at or near \"INTO\" LINE 1: SELECT COUNT(*) AS
 total FROM (INSERT INTO users (vk_id, eu_...

What is causing this error?


回答1:


I've installed phpPgAdmin to try to reproduce your error. I got it right away when tried to create a test table:

So looks like phpPgAdmin wraping your query into select count(*) as total from (...). I've found that it happens only when checkbox "Paginate results" on query page is set to on (obviously phpPgAdmin trying to count how many rows it will get and then show it page by page). Uncheck it and your query will work fine:

updated 1

Similar question - INSERT INTO PostgreSQL

updated 2

As @akshay mentioned in comments, you also could get similar error running the queries through the command line, see explained situation and answer here - PostgreSQL disable more output




回答2:


The phpPgAdmin UI provides two links for running SQL - one in the main body of the page, and one in the menu bar at the top of the page.

The one in the main body of the page will throw the error you're seeing if you run a data definition statement like CREATE TABLE.

However, the one in the menu bar will run data definition queries with no problem.

In short:

screen




回答3:


you could try this as well

INSERT INTO "user" ("username", "password_hash", "first_name", "last_name") VALUES( 'Foo',MD5('54321'),'Foo','Bar' );



来源:https://stackoverflow.com/questions/18368831/postgres-sql-insert-query-syntax-error-from-phppgadmin

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!