第3章添加、更新与删除数据_第1页
第3章添加、更新与删除数据_第2页
第3章添加、更新与删除数据_第3页
第3章添加、更新与删除数据_第4页
第3章添加、更新与删除数据_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、让IT教学更简单,让IT学习更有效让IT教学更简单,让IT学习更有效第三章 添加、更新与删除数据添加数据更新数据删除数据让IT教学更简单,让IT学习更有效 学习目标掌握添加数据、更新数据和删除数据13了解INSERT语句的其他写法2熟悉DELETE和 TRUNCATE删除数据的区别掌握了解熟悉让IT教学更简单,让IT学习更有效 目录添加数据3.13.1点击查看本小节知识架构更新数据3.23.2删除数据3.33.3让IT教学更简单,让IT学习更有效3.1 数据库基础知识返回目录3.1.13.1.2为表中所有字段添加数据为表的指定字段添加数据3.1.3同时添加多条记录 知识架构让IT教学更简单,让

2、IT学习更有效3.1 添加数据 3.1.1为表中所有字段添加数据为表中所有字段添加数据 通常情况下,向数据表中添加的新记录应该包含表所有字段,即为该表中的所有字段添加数据,为表中所有字段添加数据的INSERT语句有两种。 1、INSERT语句中指定所有字段名 向表中添加新记录时,可以在INSERT语句中列出表的所有字段名,其语法格式如下所示:INSERT INTO 表名(字段名1,字段名2,) VALUES(值1,值2,);“字段名1,字段名2,”表示数据表中的字段名称,此处必须列出表所有字段的名称;“值1,值2,”表示每个字段的值,每个值的顺序、类型必须与对应的字段相匹配。让IT教学更简单,

3、让IT学习更有效3.1 添加数据 3.1.1为表中所有字段添加数据为表中所有字段添加数据 【例3-1】向student表中添加一条新记录,记录中id字段的值为1,name字段的值为zhangsan,grade字段的值为98.5。 在添加新记录之前需要先创建一个数据库chapter03,创建数据库的SQL语句如下所示: 选择使用数据库chapter03,SQL语句如下: 在数据库中创建一个表student用于存储学生信息,创建student表的SQL语句如下所示:CREATE DATABASE chapter03;USE chapter03;让IT教学更简单,让IT学习更有效3.1 添加数据 3

4、.1.1为表中所有字段添加数据为表中所有字段添加数据 在数据库中创建一个表student用于存储学生信息,创建student表的SQL语句如下所示: 使用INSERT语句向student表中插入一条数据,SQL语句如下所示: 当上述SQL语句执行成功后,会在表student中添加一条数据。为了验证数据是否添加成功,使用SELECT语句查看student表中的数据,查询结果如下: INSERT INTO student(id,name,grade) VALUES(1,zhangsan,98.5);让IT教学更简单,让IT学习更有效3.1 添加数据 3.1.1为表中所有字段添加数据为表中所有字段添

5、加数据 当上述SQL语句执行成功后,会在表student中添加一条数据。为了验证数据是否添加成功,使用SELECT语句查看student表中的数据,查询结果如下: 需要注意的是,使用INSERT语句添加记录时,表名后的字段顺序可以与其在表中定义的顺序不一致,它们只需要与VALUES中值的顺序一致即可。 让IT教学更简单,让IT学习更有效3.1 添加数据 3.1.1为表中所有字段添加数据为表中所有字段添加数据 【例3-2】 向student表中添加一条新记录,记录中id字段的值为2,name字段的值为lisi,grade字段的值为95。SQL语句如下所示: 执行结果如下所示: 接下来通过查询语句

6、查看数据是否成功添加,执行结果如下所示:INSERT INTO student(name,grade,id)VALUES(lisi,95,2);让IT教学更简单,让IT学习更有效3.1 添加数据 3.1.1为表中所有字段添加数据为表中所有字段添加数据 2、INSERT语句中不指定字段名 在MySQL中,可以通过不指定字段名的方式添加记录,其基本的语法格式如下所示: 在上述格式中,“值1,值2,”用于指定要添加的数据。需要注意的是,由于INSERT语句中没有指定字段名,添加的值的顺序必须和字段在表中定义的顺序相同。INSERT INTO 表名 VALUES(值1,值2,);让IT教学更简单,让I

7、T学习更有效3.1 添加数据 3.1.1 为表中所有字段添加数据为表中所有字段添加数据 【例3-3】向student表中添加一条新记录,记录中id字段的值为3,name字段的值为wangwu,grade字段的值为61.5。INSERT语句如下所示: 使用SELECT语句查看student表中的数据,查询结果如下所示:INSERT INTO studentVALUES(3,lisi,61.5);让IT教学更简单,让IT学习更有效3.1 添加数据 3.1.2为表的指定字段添加数据为表的指定字段添加数据 为表的指定字段添加数据,就是在INSERT语句中只向部分字段中添加值,而其他字段的值为表定义时的

8、默认值。为表的指定字段添加数据的基本语法格式如下所示: 在上述语法格式中,“字段1,字段2,”表示数据表中的字段名称,此次只指定表中部分字段的名称。“值1,值2,”表示指定字段的值,每个值的顺序、类型必须与对应的字段相匹配。INSERT INTO 表名(字段1,字段2,) VALUES(值1,值2,)让IT教学更简单,让IT学习更有效3.1 添加数据 3.1.2为表的指定字段添加数据为表的指定字段添加数据 【例3-4】 向student表中添加一条新记录,记录中id字段的值为4,name字段的值为“zhaoliu”,grade字段不指定值,SQL语句如下所示: 需要注意的是,如果某个字段在定义

9、时添加了非空约束,但没有添加default约束,那么插入新记录时就必须为该字段赋值,否则数据库系统会提示错误。INSERT INTO student(id,name)VALUES(4,zhaoliu);让IT教学更简单,让IT学习更有效3.1 添加数据 3.1.2为表的指定字段添加数据为表的指定字段添加数据 【例3-5】向student表中添加一条新记录,记录中id字段的值为5,grade字段的值为97,name字段不指定值,SQL语句如下所示: 执行结果如下所示: 从执行结果可以看出,执行INSERT语句时发生了错误,发生错误的原因是name字段没有指定默认值,且添加了非NULL约束。INS

10、ERT INTO student(id,grade) VALUES(5,97);让IT教学更简单,让IT学习更有效3.1 添加数据 3.1.2为表的指定字段添加数据为表的指定字段添加数据 为指定字段添加数据时,指定字段也无需与其在表中定义的顺序一致,它们只要与VALUES中值的顺序一致即可。 【例3-6】向student表中添加一条新记录,记录中name字段的值为sunbin,grade字段的值为55,id字段不指定值,SQL语句如下所示: 执行INSERT语句向student表中添加数据,然后通过查询语句查看数据是否成功添加。INSERT INTO student(grade,name)VA

11、LUES(55,sunbin);让IT教学更简单,让IT学习更有效3.1 添加数据 多学一招:多学一招:INSERT语句其他写法语句其他写法 INSERT语句还有一种语法格式,可以为表中指定的字段或者全部字段添加数据,其格式如下所示:INSERT INTO 表名SET 字段名1=值1,字段名2=值2,“字段名1”、“字段名2”是指需要添加数据的字段名称,“值1”、“值2”表示添加的数据。如果在SET关键字后面指定了多个“字段名=值”对,每对之间使用逗号分隔,最后一个“字段名=值”对之后不需要逗号。接下来通过一个案例来演示使用这种语法格式向student表中添加记录。 【例3-7】向studen

12、t表中添加一条新记录,该条记录中id字段的值为5,name字段的值为boya,grade字段的值为99,INSERT语句如下所示: INSERT语句成功执行后,通过查询语句查看数据是否成功添加。INSERT INTO studentSET id=5,name=boya,grade=99;让IT教学更简单,让IT学习更有效3.1 添加数据 3.1.3 同时添加多条记录同时添加多条记录 在MySQL中提供了使用一条INSERT语句同时添加多条记录的功能,其语法格式如下所示: 在上述语法格式中,“(字段名1,字段名2,)”是可选的,用于指定插入的字段名。“(值1,值2,)”表示要插入的记录,该记录可

13、以有多条,并且每条记录之间用逗号隔开。让IT教学更简单,让IT学习更有效3.1 添加数据 3.1.3 同时添加多条记录同时添加多条记录 【例3-8】向student表中添加三条新记录,INSERT语句如下所示: INSERT语句成功执行后,通过查询语句查看数据是否添加成功。 在添加多条记录时,可以不指定字段列表,只需要保证VALUES后面跟随的值列表依照字段在表中定义的顺序即可。 和添加单条记录一样,如果不指定字段名,必须为每个字段添加数据,如果指定了字段名,就只需要为指定的字段添加数据。让IT教学更简单,让IT学习更有效3.1 添加数据 3.1.3 同时添加多条记录同时添加多条记录 【例3-

14、9】向student表中添加三条新记录,记录中只为id和name字段添加值,INSERT语句如下所示: 执行INSERT语句向student表中添加数据,然后通过查询语句查看数据是否添加成功。让IT教学更简单,让IT学习更有效3.2 更新数据 MySQL中使用UPDATE语句来更新表中的记录,其基本的语法格式如下所示: 在上述语法格式中,“字段名1”,“字段名2”用于指定要更新的字段名称,“值1”,“值2”用于表示字段更新的新数据。“WHERE条件表达式”是可选的,用于指定更新数据需要满足的条件。UPDATE 表名SET 字段名1 = 值1,字段名2 = 值2,WHERE 条件表达式让IT教学

15、更简单,让IT学习更有效3.2 更新数据 UPDATE语句可以更新表中的部分数据和全部数据,下面就对这两种情况进行讲解: 1、UPDATE更新部分数据 更新部分数据是指根据指定条件更新表中的某一条或者某几条记录,需要使用WHERE子句来指定更新记录的条件。 2、UPDATE更新全部数据 在UPDATE语句中如果没有使用WHERE子句,则会将表中所有记录的指定字段都进行更新。 让IT教学更简单,让IT学习更有效3.2 更新数据 1、UPDATE更新部分数据 【例3-10】更新student表中id字段值为1的记录,将记录中的name字段的值更改为caocao, grade字段的值更改为50。 首

16、先使用查询语句查看id字段值为1的记录,执行结果如下所示: 下面使用UPDATE语句更新这条记录,SQL语句如下所示:UPDATE studentset name=caocao,grade=50WHERE id=1;让IT教学更简单,让IT学习更有效3.2 更新数据 为了验证数据是否更新成功,使用SELECT语句查看数据库student中id为1的记录,查询结果如下所示: 从查询结果可以看到,id字段值为1的记录发生了更新,记录中name字段的值变为caocao,grade字段的值变为50。 如果表中有多条记录满足WHERE子句中的条件表达式,则满足条件的记录都会发生更新。让IT教学更简单,让

17、IT学习更有效3.2 更新数据 【例3-11】更新student表中id字段值小于4的记录,将这些记录的grade字段值都更新为100。 首先使用查询语句查看id字段值小4的记录,执行结果如下所示: 下面使用UPDATE语句更新这3条记录,UPDATE语句如下所示:UPDATE studentSET grade=100WHERE id5;让IT教学更简单,让IT学习更有效3.3 删除数据 执行DELETE语句删除student表中的数据,然后再次通过查询语句查看id字段值大于5的记录,执行结果如下所示: 从查询结果可以看到记录为空,说明id字段置大于5的记录被成功删除了。让IT教学更简单,让I

18、T学习更有效3.3 删除数据 2、DELETE删除全部数据 【例3-15】删除student表中的所有记录。 在删除数据之前首先使用查询语句查看student表中的所有记录,执行结果如下所示:让IT教学更简单,让IT学习更有效3.3 删除数据 从查询结果可以看出,student表中还有6条记录,下面使用DELETE语句将这6条记录全部删除,DELETE语句如下所示: 执行DELETE语句删除student表中的数据,然后再次通过查询语句查看student表中的记录,执行结果如下所示: 从查询结果可以看到记录为空,说明表中所有的记录成功删除。DELETE FROM student;让IT教学更简

19、单,让IT学习更有效3.3 删除数据 多学一招:使用关键字多学一招:使用关键字TRUNCATE删除表中数据删除表中数据 在MySQL数据库中,还有一种方式可以用来删除表中所有的记录,这种方式需要用到一个关键字TRUNCATE,其语法格式如下: TRUNCATE的语法格式很简单,只需要通过“表名”指定要执行删除操作的表即可。下面通过一个案例来演示TRUNCEATE的用法。TRUNCATE TABLE 表名让IT教学更简单,让IT学习更有效3.3 删除数据 多学一招:使用关键字多学一招:使用关键字TRUNCATE删除表中数据删除表中数据 【例3-16】在数据库chapter03中创建一张表tab_

20、truncate,创建tab_truncate表的SQL语句如下所示: 向tab_truncate表中添加5条记录,且只添加name字段的值,SQL语句如下所示: 执行INSERT语句向tab_truncate表中添加5条记录,然后通过查询语句查看数据是否成功添加。INSERT INTO tab_truncate(name)VALUES(A),(B),(C),(D),(E);让IT教学更简单,让IT学习更有效3.3 删除数据 多学一招:使用关键字多学一招:使用关键字TRUNCATE删除表中数据删除表中数据 接下来使用TRUNCATE语句删除tab_truncate表中的所有记录,TRUNCAT

21、E语句如下所示: 执行结果如下所示: 从执行结果可以看到TRUNCATE语句成功执行,接下来通过查询语句查看tab_truncate表中的记录是否删除成功,执行语句如下所示: 通过查询结果可以看到记录为空,说明tab_表中的记录被全部删除了。TRUNCATE TABLE tab_truncate;让IT教学更简单,让IT学习更有效3.3 删除数据 多学一招:使用关键字多学一招:使用关键字TRUNCATE删除表中数据删除表中数据 TRUNCATE语句和DETELE语句都能实现删除表中的所有数据的功能,但两者也有一定的区别,下面就针对两者的区别进行说明: 1、DELETE语句是DML语句,TRUN

22、CATE语句通常被认为是DDL语句。 2、DELETE语句后面可以跟WHERE子句,通过指定WHERE子句中的条件表达式只删除满足条件的部分记录,而TRUNCATE语句只能用于删除表中的所有记录让IT教学更简单,让IT学习更有效3.3 删除数据 多学一招:使用关键字多学一招:使用关键字TRUNCATE删除表中数据删除表中数据 3、使用TRUNCATE语句删除表中的数据后,再次向表中添加记录时,自动增加字段的默认初始值重新由1开始,而使用DELETE语句删除表中所有记录后,再次向表中添加记录时,自动增加字段的值为删除时该字段的最大值加1。 【例3-17】在空表tab_truncate 中,重新添加5条记录,SQL语句如下: 执行INSERT语句向tab_trun

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论