我用sql创建了下表。然后输入数据。然后我又加了一个专栏(email)。接下来我需要在email列中插入数据。但是有一个错误。
CREATE TABLE Library_books (
ISBN VARCHAR(15),
Book_name VARCHAR(20),
subject TEXT(12),
student_id VARCHAR(4),
borrow_date DATE,
PRIMARY KEY (ISBN),
FOREIGN KEY (student_id)
REFERENCES student (SID)
);
INSERT INTO Library_books VALUES ('1-22-5567-4' ,'Vectors' ,'Mathematics', 'S021', '2015-04-23'),
('978-14840-0' ,'The C Programming ' ,'Computer' , 'S005', '2016-03-01'),
('567-2-13-145-3' ,'Code complete' ,'Computer' , 'S005', '2016-06-04'),
('345-6-7889-5' ,'How to solve it' ,'Mathematics', 'S090', '2016-08-12'),
('34-22-34556-4' ,'Real Analysis' ,'Mathematics', 'S021', '2016-10-22'),
('3-445-7-8' ,'Python' ,'Computer' , 'S021', '2016-09-11');
INSERT INTO student (email) VALUES ('Bob@gmail.com'),
('John@gmail.com'),
('Albert@gmail.com'),
('Sam@gmail.com'),
('Tom@gmail.com'),
('Liz@gmail.com') ;
CREATE table student (SID varchar(4) NOT NULL,
student_name varchar(10) NOT NULL,
address varchar(12) NOT NULL,
age int NOT NULL,
telephoneNo varchar(12) NOT NULL,
primary key (SID));
结果:
错误1062(23000):键“primary”的条目“”重复
2条答案
按热度按时间rjee0c151#
你需要使用
update
语句查询而不是再次插入。尝试下面的查询,为每封电子邮件使用学生id为where子句。rkue9o1l2#
用于在创建表之后将一组完整的值(整行)插入到表中。
但要将数据输入到使用ALTERTABLE语句创建的新列中,必须使用update,
要用不同的(differant)数据值更新多行,需要多次使用update语句,如下所示:,
但如果所有记录的新数据都相同,则可以使用以下方法。
只有在更新相同的值时,此选项才有效。