【发布时间】:2021-12-16 13:30:52
【问题描述】:
我是 SQL 新手,正在学习它的基本功能,我被指示创建一个表并将其添加到我的数据库中,同时将适当的值添加到表中的每个字段。但是我一直在该行中收到语法错误:
INSERT into Weather_db.client_data
到目前为止,这是我的代码。让我知道我应该改变什么:
Q1.) 使用 CREATE TABLE 语句,创建一个名为 client_data 的表,其中包含字段
CREATE TABLE Weather_db.client_data (
ID int PRIMARY KEY,
First_name varchar(40) NOT NULL,
Last_name varchar(40),
Nationality varchar(40),
Age Float Check (age>18))
Q2.) 使用 INSERT 语句在数据库中插入以下记录
INSERT into Weather_db.client_data
VALUES ('John', 'S',
'British', 'null'),
('Peter', 'Jackson', 'null', '20'),
('Tom', 'W', 'null', '20'),
('Jack', 'Patrick', 'American', '30');
【问题讨论】:
-
首先您要声明 5 列并插入 4 个值。如果您想使用插入值并且不想包含列,您必须更改为:
insert into Weather_db.client_data (First_name ,Last_name ,Nationality ,Age ) ....第二个Age Float Check (age>18)将因null而失败,ID int PRIMARY KEY没有默认值 -
@ErgestBasha CHECK 约束由 UNKNOWN 的结果满足,因此它们有效地忽略列为 NULL 的情况。
-
@BillKarwin 是的,你是对的,它给了我第 1 行截断的错误数据,但我猜是因为
ID
标签: mysql sql database mysql-workbench