![MySQL数据库应用与管理 第2版](https://wfqqreader-1252317822.image.myqcloud.com/cover/707/41398707/b_41398707.jpg)
3.6 操作表中数据
在创建了数据表后,就可以向表中添加数据;在插入了数据后,就可以对数据进行修改或者删除操作。
3.6.1 使用Navicat对话方式操作表中数据
以在学生表(student)中插入、修改、删除数据为例,使用Navicat对话方式操作表中数据的步骤如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/50_03.jpg?sign=1739516557-RdHRIBIDNRUxVwNYfASHL9PYl3BJzNTL-0-79158a87f5991d2ab19a141f5fb07e7d)
3.6.1
1)在Navicat控制台中,双击展开LDL连接对象,再次双击数据库列表中的stuinfo,打开该数据库,在数据表列表中的student上单击鼠标右键,选择“打开表”命令(或者单击工具栏上的“打开表”按钮),则打开一个表数据管理窗口,如图3-18所示。
2)通过以上管理窗口,可以实现对学生表(student)中数据的添加、修改和删除操作,如图3-19所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/50_04.jpg?sign=1739516557-qD4AcCqw91B0dgNqfX1k9cEmomKLX0GE-0-97fbbd5a8ce34b688bfe3e1a039bacd4)
图3-18 表数据管理窗口
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/50_05.jpg?sign=1739516557-bBm9tENwfSV4NFzKYEFipDAOlDDB8vzo-0-4886e71d7289db906adf25e15fd56b71)
图3-19 管理学生表(student)中的数据
● 对照学生表(student)中的字段,可以直接在表格中输入或者修改学生信息,一条记录添加或者修改结束以后,通过在不同记录间切换光标,可以实现数据的自动保存。
● 把光标移动到最后一条记录上,单击键盘上的向下方向键〈↓〉,可以生成一条新的空白记录。
● 选择一条或者多条记录,单击鼠标右键,选择“删除记录”命令,则可把所选中的记录删除。
● 窗口左下角的图标按钮,也可以用来完成数据的添加、修改和删除操作。
3.6.2 使用INSERT语句向表中插入数据
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_01.jpg?sign=1739516557-F00IPWMFKgwvkvLYxHs5N5Hkf9daUx8b-0-bea9decb6cccb6b3567d685917e72951)
3.6.2
使用INSERT语句可以向表中插入数据,其语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_02.jpg?sign=1739516557-5dbhM7UX8gMHmajzwprrNjgV80RGNTy3-0-477576eaf89848c853c4ba039532b9ec)
说明:
●表名后面的字段列表要与VALUES子句中表达式值的列表一一对应,即个数要相等,数据类型也要匹配。字符型数据或日期/时间类型的数据需要使用单引号括起来。
● INSERT语句也可以省略字段列表,但必须插入一行完整的数据,且必须按照表中定义的字段顺序为全部字段提供值。
【示例3-13】 向学生表(student)中插入一行数据。运行结果如图3-20所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_04.jpg?sign=1739516557-K0i7cTM4ufTU8OpsNQFa8gHmhqie6bk0-0-155612ad048cbc1d20d8b549578d3780)
说明:执行成功以后,可以通过表数据管理窗口进行查看,如图3-21所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_06.jpg?sign=1739516557-miVRYG6gxXg7h4jOX7Or8B7kuBiElinK-0-cc61cbdf93a3f9fa05f20461b4dec41a)
图3-20 使用INSERT语句向学生表(student)中插入一行数据
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_07.jpg?sign=1739516557-pTjEZa15PW0q44F6C5X1GKBLQsmdrFrq-0-bcb57866c6950e1d2e5b0f7461cfed7b)
图3-21 在表数据管理窗口中查看所插入的数据
另外,INSERT语句也可以一次性插入多行数据,即在VALUES子句的后面加上多个表达式列表,并以逗号隔开。
【示例3-14】 向学生表(student)中插入多行数据。运行结果如图3-22所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_08.jpg?sign=1739516557-joGwPaCmYchAAbN1nGkC6zKvZ2n6mnJg-0-acc4291667e50bde95ac441b5d31757f)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_01.jpg?sign=1739516557-mKI6VHQf89q3xqZym44PvecBWBaNURp8-0-9efd1c24bdc93023062d9510d9910296)
图3-22 使用INSERT语句向学生表(student)中插入多行数据
3.6.3 使用UPDATE语句修改表中数据
使用UPDATE语句可以对表中的一列或多列数据进行修改,修改时必须指定需要修改的字段,并且赋予新值。UPDATE语句的语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_02.jpg?sign=1739516557-a8LHuL9AIolDb9OXKfXmAauY73oQhApO-0-dd944239acc4476c23bfb890d1214ec2)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_03.jpg?sign=1739516557-pRk3sltXXs8tzhpvlruwfzVpJo0faJm6-0-bd73b43206caceb2bd7e4f659a33d9e5)
3.6.3
说明:通过WHERE子句可以限定要更新的数据行。
【示例3-15】 修改学生表(student)中学号为1308013103的数据记录,把其班级更改为“网络131”,备注更改为“班长”。运行结果如图3-23所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_05.jpg?sign=1739516557-RxSdOuqwDskrRIZrajCzYCcze8xru1aT-0-57a7241331450a4c6ea5d73c7e64bdd6)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_06.jpg?sign=1739516557-xTQ6AwI3D7LMjrtXCvdFjqOQyZqgpyYq-0-db107ac02c1b57e5a21b9f1c40bed03d)
图3-23 使用UPDATE语句修改学生表(student)中的数据
3.6.4 使用DELETE语句删除表中数据
使用DELETE语句可以删除表中的一行或多行数据。DELETE语句的语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_07.jpg?sign=1739516557-obwckzeFRPFQazwI2iss8u1SqEbIU2cZ-0-dca41d7511c08ac4a690276c22d3aa06)
3.6.4
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_01.jpg?sign=1739516557-Wz9MVyVl5cSGAUmex9qRVPLv99S6df9r-0-f8c3bf71e79d0722d29f3f2fc113bf6a)
说明:通过WHERE子句可以限定要删除的数据行,否则清空整个数据表。
【示例3-16】 删除学生表(student)中学号为1308013105的数据记录。运行结果如图3-24所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_03.jpg?sign=1739516557-CIkaaeRutQvPSKM8VmSOekarypLWYffG-0-6803a771d262ae8241ef5ada4115de00)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_04.jpg?sign=1739516557-LDR6SwmA67E28xdatCdpDwS6V8unONBF-0-d1035889ff94da2f4c70b0bee32c2466)
图3-24 使用DELETE语句删除学生表(student)中的数据
3.6.5 使用TRUNCATE语句清空表中数据
使用TRUNCATE [TABLE]语句可以删除表中的所有数据行,TRUNCATE [TABLE]语句的语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_05.jpg?sign=1739516557-fYL5pfavgQWE7AVahJO1ggjtP40EEEdL-0-8361a3ab420404c04dbfae4b6b785b21)
说明:TRUNCATE [TABLE]语句在功能上与不带WHERE子句的DELETE语句相同,即两者均可以删除表中的全部数据行。但是TRUNCATE [TABLE]速度更快,且使用的系统和事务日志资源少;并且对于具有自动递增值的字段,可以使其自动恢复到默认的初始值,起到计数重置(归零重新计算)的作用。
【示例3-17】 使用TRUNCATE语句清空学生表(student)中的数据。运行结果如图3-25所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_07.jpg?sign=1739516557-nJzkRENWcY0Du8gNIXEgZvJcv8bZvpDA-0-14ca7eb41a47a9b8430b8370a22d7ea4)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_08.jpg?sign=1739516557-9QCDlTEvhmTCkfvdhFUM2X7JklYOB8XR-0-792f11c1f2588ede863b25e8e0f85597)
图3-25 使用TRUNCATE语句清空学生表(student)中的数据