第 29.1 节:错误代码 1064:语法错误
SELECT LastName, FirstName, FROM Person;
返回消息:
Error Code: 1064. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'from Person' at line 2.
从 MySQL 收到 “1064 error” 消息意味着查询无法被解析,存在语法错误。换句话说,MySQL 无法理解该查询。
错误消息中的引号从查询中 MySQL 无法解析的第一个字符开始。在此示例中,MySQL 在 from Person 的上下文中无法理解。这里,在 from Person 之前有一个多余的逗号。该逗号告诉 MySQL 在 SELECT 子句中期望另一个列描述。
语法错误总是显示 ... near '...'。引号开头的内容非常接近错误位置。要定位错误,请查看引号中的第一个标记以及引号之前的最后一个标记。
有时你会看到 ... near '',即引号内没有内容。这意味着 MySQL 无法理解的第一个字符恰好在语句的末尾或开头。这通常表明查询包含不平衡的引号(' 或 ")或不平衡的括号,或者你没有正确终止语句。
对于存储过程,你可能忘记了正确使用 DELIMITER。
因此,当你遇到错误 1064 时,请查看查询文本,找到错误消息中提到位置。在该位置附近仔细检查查询文本。
如果你请别人帮忙排查错误 1064,最好提供完整的查询文本和错误消息文本。
第 29.2 节:错误代码 1175:安全更新
当尝试更新或删除记录时,如果没有包含使用 KEY 列的 WHERE 子句,会出现此错误。
要强制执行删除或更新,可以设置:
SET SQL_SAFE_UPDATES = 0;
要重新启用安全模式:
SET SQL_SAFE_UPDATES = 1;
第 29.3 节:错误代码 1215:无法添加外键
当表的结构不足以处理开发者所要求的外键快速查找验证时,会发生此错误。
CREATE TABLE `gtType` (
`type` CHAR(2) NOT NULL,
`description` VARCHAR(1000) NOT NULL,
PRIMARY KEY (`type`)
) ENGINE=InnoDB;
CREATE TABLE `getTogethers`


2823

被折叠的 条评论
为什么被折叠?



