Fixing column “columnname” does not exist pgsql in database. Double quote vs single quote error

醉酒当歌 提交于 2019-11-27 19:39:05

问题


I have a table review(movie_id, user_id, reviewtext, date, time, likes, status)/ I get the error

column "exist" does not exist LINE 1: INSERT INTO review values ($1, $2, $3,$4,$5 ,0,"exist") ^ )

when I want to insert values into a postgresql database. I can not modify the code anymore so is there any way to make this work by altering the database like adding a column?

The code to insert is as follows:

 $query = $this->db->prepare('INSERT INTO review values (:movieid, :userid, :review,:date,:time ,0,"exist")');
 $result = $query->execute(Array(':movieid' => $movieid, ':userid' => $userid, ':review' => $review, ':date' => $date, ':time' => $time));

I understand that a way to fix this is to use single quotes for the column 'status' but the only thing I can do is alter the database.


回答1:


No you can't.

If you had used proper insert - with named columns:

insert into review (column1, column2, column3) values (....)

then it could be theoretically possible to do by adding column "exist" and a trigger. But this would be very far away from being sane solution.



来源:https://stackoverflow.com/questions/17123996/fixing-column-columnname-does-not-exist-pgsql-in-database-double-quote-vs-sin

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