You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL创建Supplier表及插入数据报错,Error 1136转1054求助

问题分析与解决方案

错误原因拆解

  1. Error Code: 1136:最初的列数不匹配,是因为INSERT语句中值的顺序与指定字段顺序错位,且可能存在值数量与字段数量不一致的情况;调整后列数匹配,但字段值对应关系仍错误。
  2. Error Code: 1054:提示supplierName列不存在,说明CREATE TABLE语句未成功执行(或执行时存在拼写错误),导致表结构不符合预期,后续的INSERT和SELECT操作自然失效。

修正后的完整SQL代码

-- 先删除已存在的错误表(如果有)
DROP TABLE IF EXISTS Supplier;

-- 创建供应商表,确保字段拼写与定义正确
CREATE TABLE Supplier(
    ID varchar(10) NOT NULL PRIMARY KEY,
    supplierName varchar(20),
    phoneNumber varchar(15),
    address varchar(50), -- 原长度15不足以存储完整地址,调整为50
    size varchar(10)
);

-- 插入数据,严格匹配字段顺序:ID, supplierName, phoneNumber, address, size
INSERT INTO Supplier(ID, supplierName, phoneNumber, address, size)
VALUES 
    ('A100', 'Daryl', '57615692', 'Rose-Belle Rue 99', 'Small'),
    ('A101', 'Raquil', '57889958', 'Quatre-Bornes Chemin Ferre 82', 'Large'),
    ('A102', 'Yohan', '59864892', 'Flaq Casal 76', 'Medium'),
    ('A103', 'Hassan', '54863289', 'Nitro street 69', 'Small'),
    ('A104', 'Roger', '57894256', 'Turo Rue 420', 'Large');

-- 查询验证数据
SELECT * FROM Supplier;

关键修正点

  • 修正INSERT值顺序:将电话号码与地址的位置交换,确保每个值对应正确的字段。
  • 扩展地址字段长度:原varchar(15)会导致地址数据被截断,调整为varchar(50)满足存储需求。
  • 添加表清理语句:先删除可能存在的错误结构表,再重新创建,确保表结构完全符合预期。

验证步骤

  1. 执行上述完整SQL代码,完成表重建与数据插入。
  2. 执行SELECT * FROM Supplier;,若能正常返回所有供应商数据,则问题解决。

内容的提问来源于stack exchange,提问作者clown

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 00:05:21