mysql 专业笔记 -- 第 29 章:错误代码

第 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`
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

山岚的运维笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值