内容正文:
第4章
数据更新
4.1 插入数据
4.2 数据修改
4.3 数据删除
04
1
4.1插入数据
1.向表中所有字段插入数据
向表中所有字段插入数据的两种方式:①指定表中所有字段,并给出对应字段的值;②不指定字段给出所有字段的值。
(1)指定表中所有字段
向课程表tb_course中插入一行数据(1, '高等数学', '必修', 5, 130, '测试数据')。
首先查看tb_course的表结构,代码如下:
DESC cjgl. tb_course;
运行结果如图4-1所示。
4.1.1插入数据之INSERT…VALUES语句
2
4.1插入数据
(2)不指定字段
向课程表(tb_course)中插入一行数据(2,'MySQL数据库基础','必修',5,130,'测试数据'),采用INSERT…VALUES语句,不指定字段给出所有字段的值,对应的SQL语句代码如下:
INSERT INTO tb_course VALUES(2, 'MySQL数据库基础','必修',5,130,'测试数据');
运行效果如图4-4所示。
3
4.1插入数据
2.向表中部分字段插入数据
向表中部分字段插入数据,即通过INSERT…VALUES语句,插入给定的部分字段的数据。
【例4-2】向课程表(tb_course)中插入一行数据('大学英语','必修')。
对应的SQL语句代码如下:
INSERT INTO tb_course(name,nature) VALUES('大学英语','必修');
运行效果如图4-6所示。
4.1.1插入数据之INSERT…VALUES语句
4
4.1插入数据
通过查询语句,查看数据的插入结果,使用以下的SQL语句:
SELECT * FROM tb_course;
运行结果如图4-7所示,id为3的记录为新插入的数据。
5
4.1插入数据
3.向表中插入多条数据
通过INSERT…VALUES语句向表中还可以一次插入多条数据。
【例43】向课程表(tb_course)中插入多条数据,对应的SQL语句代码如下:
INSERT INTO tb_course(id, name, nature, credits, hours, remarks)
VALUES(4, '建筑学基础', '必修', 3, 100, '测试数据'),
(5, '文言文赏析', '必修', 6, 300, '测试数据'),
(6, 'Java编程基础', '必修', 3, 120, '测试数据');
运行效果如图4-8所示。
6
4.1插入数据
通过查询语句,查看数据的插入结果,使用以下的SQL语句:
SELECT * FROM tb_course;
运行效果如图4-9所示,id为4、5、6的记录为新插入的数据。
7
4.1插入数据
INSERT…SET语句也可以向表中插入数据,该语句通过直接给表中的某些字段赋值来完成指定数据的插入,其他未赋值的字段的值为默认值。
4.1.2插入数据之INSERT…SET语句
在MySQL中,可通过INSERT…SELECT语句,向指定表中插入其他表中的数据,即将一张表的查询结果插入指定的数据表中,INSERT…SELECT语句的基本语法如下:
INSERT [INTO] <数据表名1> [(字段名,…)]
SELECT 字段名1,字段名2,… FROM<数据表名2>
[ON DUPLICATE KEY UPDATE 字段名=表达式,…]
4.1.3插入数据之INSERT…SELECT语
8
4.2数据修改
在插入数据时可能会遇到将错误的数据插入数据库的情况,也有可能在后期的工作中要对数据进行更新,在此就需要涉及对表中的数据进行修改。在MySQL语句中,通过UPDATE语句来执行修改的操作,该语句即可以修改字段所有的值,也可以修改指定的值。
(1)修改所有的值。
(2)修改指定的值。
在修改数据时,一般需要对修改的字段的数据加上限定条件,只修改满足条件的记录的该字段,此时要用到WHERE字句。
9
4.3数据删除
(1)删除指定记录的数据
(2)删除所有数据
4.3.1删除数据之DELETE语句
删除数据库中所有的行,还可以使用TRUNCATE TABLE语句。
4.3.2删除数据之TRUNCATE TABLE语句
10
$$