我真的很讨厌这个错误消息,因为它是人类历史上最无用的错误信息。
无论如何,我认为我已经盯着这个非常简单的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
的说法感到厌倦。
问题出在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
您错过了一个逗号:
$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";
我相信改变
ticketId = '$this->ticket'
自
ticketId = $this->ticket
应该工作..
似乎错误ticket_ID我认为您正在使用ticket_id作为数字类型或整数类型并将其作为字符串传递'$this->ticket'
删除"并将其保留为$this->ticket
你错过了一个逗号,还有一些"和":
"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.";