【发布时间】:2015-07-04 03:21:30
【问题描述】:
SQL
BEGIN
UPDATE gcm_users SET gcm_regid="fff" WHERE user_id=8;
IF sql%rowcount = 0 THEN
INSERT INTO gcm_users (gcm_regid, user_id) VALUES ("dsdtrytujytetgeryrtyh", "8");
END IF;
END;
错误:#1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 2 行的 'UPDATE gcm_users SET gcm_regid="dsdtrytujytetgeryrtyh" WHERE user_id=8' 附近使用正确的语法
编辑:
------------------------------------------------------------
| Id | user_id | gcm_regid | created_at | Status |
------------------------------------------------------------
| 1 | 22 | ********* | 2015-04-25 13:13:39 | 1 |
| 2 | 33 | ********* | 2015-04-25 13:13:39 | 1 |
| 3 | 13 | ********* | 2015-04-25 13:13:39 | 1 |
| 4 | 12 | ********* | 2015-04-25 13:13:39 | 1 |
| 5 | 67 | ********* | 2015-04-25 13:13:39 | 1 |
| 6 | 65 | ********* | 2015-04-25 13:13:39 | 1 |
------------------------------------------------------------
有人可以帮我解决这个错误吗?
【问题讨论】:
-
gcm_users的架构好吗? -
这是完整的 SQL 还是您在此 BEGIN/END 之外执行其他任何操作?
-
@xboxremote 没有别的
-
@alagu:我不确定,但没有分隔符?喜欢
DELIMITER ;; BEGIN your code here END;;? -
这就是我想知道的。但我认为不需要它,除非他在 BEGIN/END 块之外有更多语句。但这可能值得一试?
标签: mysql sql mysql-error-1064