我真的很讨厌这个错误信息,因为它是人类历史上最无用的错误信息。
无论如何,我认为我已经盯着这个非常简单的sql
一个小时,但仍然认为问题出在哪里。希望有人可以帮助我,或者也许一些橡皮鸭会做的伎俩。
php代码:
$sql = "UPDATE events SET titel = '$this->estart',
endTime = '$this->eend',
desc = '$this->desc',
dd = '$this->dDmed',
dato = '$this->dato',
ticketId = '$this->ticket' WHERE id = $this->id";
抛出SQL错误:
right syntax to use near 'desc = '2222222222222222',
dd = 'shop',
dato = '2015-01-14' at line 3[ UPDATE events SET titel = '08:30:00',
endTime = '09:00:00',
desc = '2222222222222222',
dd = 'shop',
dato = '2015-01-14',
ticketId = '2222222222222' WHERE id = 4]' in ....
表格布局:
id int(11)
titel varchar(200)
navn varchar(200)
email varchar(255)
tlf varchar(20)
domæne varchar(150)
kundNumb int(14)
abnId varchar(15)
startTime time
endTime time
desc text
ticketId varchar(20)
dd varchar(5)
dato date
希望有人可以提供帮助,我对sql
陈述感到厌倦。
答案 0 :(得分:5)
问题在于desc
字段。 DESC
是SQL语法中的关键字。因此,您必须使用像`desc`
这样的反向标记来引用desc。
UPDATE events SET
`titel` = '$this->estart',
`endTime` = '$this->eend',
`desc` = '$this->desc',
`dd` = '$this->dDmed',
`dato` = '$this->dato',
`ticketId` = '$this->ticket'
WHERE id = $this->id
答案 1 :(得分:1)
你错过了一个逗号:
$sql = "UPDATE events SET titel = '$this->estart',
endTime = '$this->eend',
desc = '$this->desc',
dd = '$this->dDmed',
dato = '$this->dato',
ticketId = '$this->ticket' WHERE id = $this->id";
答案 2 :(得分:0)
似乎错误在ticket_ID中我认为您使用ticket_id作为数字类型或整数类型并将其作为字符串'$this->ticket'
删除''并将其保留为$this->ticket
答案 3 :(得分:0)
我相信改变
ticketId = '$this->ticket'
到
ticketId = $this->ticket
应该有效..
答案 4 :(得分:-1)
"UPDATE events SET titel = '".$this->estart."',
endTime = '".$this->eend."',
desc = '".$this->desc."',
dd = '".$this->dDmed."',
dato = '".$this->dato."',
ticketId = '".$this->ticket."' WHERE id = ".$this->id.";