【发布时间】:2013-12-06 11:18:51
【问题描述】:
我四处寻找解决问题的方法,但在网上找不到类似的东西。 我正在编写一个 SQL 脚本以在一行的第一个空列中插入值。
我收到这个 MySQL 错误:
错误:您的 SQL 语法有错误;查看与您的 MySQL 服务器版本相对应的手册,了解在 'WHERE ID = 89' 附近使用的正确语法。
这是我的脚本。我正在通过尝试将 52 插入 ID=89 的行中的第一个空列进行测试。
$item3 = 52;
$sql="insert into TABLENAME set
GAME1 = case when GAME1 = '' then $item3 else GAME1 end,
GAME2 = case when GAME2 = '' and GAME1 <> '' then $item3 else GAME2 end,
GAME3 = case when GAME3 = '' and GAME1 <> ''and GAME2 <> '' then $item3 else GAME3 end
WHERE ID = 89 ";
谢谢。
【问题讨论】:
-
好吧,实际上我想说问题不在于您的查询,而在于您的数据库设计。如果您有一对多关系,则不应将表中的字段相乘以匹配“多”限制,而应将这些记录写入单独的表中。
-
INSERT用于添加新行,UPDATE用于修改现有行。在INSERT中使用WHERE没有意义。 -
你可以先开始学习基础知识。
标签: php mysql sql sql-insert