我遇到一个问题,即生成的准备字符串的长度有限:
我的SQL语句是这样的:
INSERT INTO `empresa`
(`nombre`, `calle`, `colonia`, `ciudad`, `estado`, `pais` `codigo_postal`, `telefono`, `email`)
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)
如果我使用bindParam()
,bindValue()
或甚至execute()
绑定值并不重要,它总是以某个长度进行修剪,我会收到此错误:< / p>
语法错误或访问冲突:1064
它抱怨......
在'
codigo_postal
,telefono
,
如果我缩短参数长度,例如,仅'algo'
'al'
,则错误相同但'ha'
显示为'hasd'
,如果我只指定一个或两个列,因此完整的语句更短,它正确执行。我能做什么?解决方法是执行INSERT
,然后使用其他语句更新其字段,但这只是愚蠢。
答案 0 :(得分:5)
`pais` `codigo_postal`
你忘记了逗号。
试试这个:
INSERT INTO `empresa`
(`nombre`, `calle`, `colonia`, `ciudad`, `estado`, `pais`, `codigo_postal`, `telefono`, `email`)
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)