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

为什么无法向Weather_db数据库的client_data表插入指定数据?

SQL插入语句错误修复说明

你的代码存在3个核心问题,按要求修改即可正常执行:

  • 字段数量不匹配:你创建的client_data表共包含ID、First_name、Last_name、Nationality、Age5个字段,其中ID是必填的主键字段,但你的INSERT语句每组值仅提供4个参数,缺少ID字段的取值
  • 空值写法错误:你给部分字段传的'null'加了单引号,会被识别为字符串内容,而非SQL标准的空值,直接写NULL即可
  • 数值类型传值错误:Age字段是Float类型,不需要加单引号包裹,加单引号会被识别为字符串触发类型报错

可选修改方案1:手动指定ID值(无需修改建表语句)

INSERT语句显式指定字段名,同时补全ID取值,修改后代码如下:

INSERT into Weather_db.client_data (ID, First_name, Last_name, Nationality, Age)
VALUES 
(1, 'John', 'S', 'British', NULL), 
(2, 'Peter', 'Jackson', NULL, 20), 
(3, 'Tom', 'W', NULL, 20), 
(4, 'Jack', 'Patrick', 'American', 30);

可选修改方案2:将ID设为自增主键(无需手动传ID值)

先修改建表语句,给ID字段加上自增属性:

CREATE TABLE Weather_db.client_data (
ID int PRIMARY KEY AUTO_INCREMENT,
First_name varchar(40) NOT NULL, 
Last_name varchar(40),
Nationality varchar(40), 
Age Float Check (age>18))

之后INSERT语句可以省略ID字段,修改后代码如下:

INSERT into Weather_db.client_data (First_name, Last_name, Nationality, Age)
VALUES 
('John', 'S', 'British', NULL), 
('Peter', 'Jackson', NULL, 20), 
('Tom', 'W', NULL, 20), 
('Jack', 'Patrick', 'American', 30);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 13:36:03