我一直在尝试建立一个非常简单的 SQL 表,该表链接到一个更大的表 - 该表工作正常,但第二个表不断抛出经典的“列数与行的值数不匹配”错误。
CREATE TABLE NonHeadlessDistro
(
Headless INT,
Proprietary INT,
EaseInstall INT,
SimilarTo VARCHAR(28),
Gnome INT,
KDE INT,
LXDE INT,
XFCE INT,
MATE INT,
Cinna INT
);
INSERT INTO NonHeadlessDistro (Headless, Proprietary, EaseInstall,
SimilarTo, Gnome, KDE, LXDE, XFCE, MATE, Cinna)
VALUES ('0','1','2','macOS','1','1','1','1','1','0'),
('0','4','4','Linux','1','1','1','1','0','0'),
('0','1','1','Windows','0','1','0','1','1','1'),
('0','2','2','Windows','0','0','1','1','0','0'),
('0','1','5','Linux','1','0','0','0','0','0'),
('0','1','4','Linux','1','0','0','0','0','0'),
('0','2','2','Linux','1','1','1','1','1','1'),
('0','3','5','Linux','1','1','1','1','1','1'),
('0','2','2','Linux','0','1','0','0','1','0'),
('0','1','2','Linux','0','0','1','0','0','0'),
('0','1','4','Linux' '1','1','0','0','0','0'),
('0','3','5','Linux','1','1','1','1','1','1'),
('0','2','3','Linux','0','0','0','0','1','0'),
('0','3','5','Linux','1','1','1','1','1','1'),
('0','1','4','Linux','1','1','0','0','0','0'),
('0','5','2','Linux','1','0','1','0','1','0'),
('0','5','5','Linux','0','0','1','0','1','0'),
('0','5','4','Linux','1','0','0','0','0','0'),
('0','5','5','Linux','1','0','1','1','0','0'),
('0','2','3','Linux','1','1','1','0','0','0'),
('0','2','3','Linux','1','1','0','1','1','1'),
('0','2','3','Linux','0','0','1','0','0','0'),
('0','2','3','Linux','1','1','1','1','1','0'),
('0','2','1','Linux','1','1','1','1','1','1'),
('0','2','1','Linux','1','1','0','1','1','0');
SELECT linux_distro
FROM linux_distro LEFT JOIN NonHeadlessDistro
ON Headless
WHERE Headless ="0";
确切的错误消息显示为:
1 errors were found during analysis
1. 10 values were expected, but found 9. (near "(" at position 596)
MySQL said:
#1136 - Column count doesn't match count at row 11
使用在线 SQL 错误检查器,问题似乎在 INSERT INTO 行内,但我完全不知道为什么其中一列没有被确认,因为我已经检查了列等于 VALUES 的数量。阅读其他错误解决方案,问题通常是由于引号放错位置或缺少值/列而出现的,但就我的生活而言,我看不出我的 SQL 有什么问题。这很可能是一个非常简单的错误,因为我在第一个表中的初始错误是通过添加缺少的分号解决的。任何帮助将不胜感激。
编辑:我是盲人,我在第 11 行看不到我丢失的逗号。但是,我已经打开了另一个蠕虫 jar 头 - 在 MySQL 期望 10 个值并且只找到 9 个值之前,但是通过编辑它现在需要 11 个值,但只能找到 10 个。它现在还影响来自
的所有 24 行INSERT INTO NonHeadlessDistro (Headless, Proprietary, EaseInstall,
SimilarTo, Gnome, KDE, LXDE, XFCE, MATE, Cinna)
进入决赛
('0','2','1','Linux','1','1','0','1','1','0');
行,所以我将相同的错误复制了 24 次。我猜这里可能存在一个非常基本的问题:
MySQL said:
#1136 - Column count doesn't match value count at row 1
最佳答案
这一行
('0','1','4','Linux' '1','1','0','0','0','0'),
少了一个逗号
关于mysql - SQL 错误 "Column count doesn' t 匹配行的值计数”- 但我已检查列数是否等于值数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49757353/