![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=1739293816-C4YJtBcpqvaIrzdTCWqDHV1Hsr9SJvZ0-0-3dd8ef6956b4769cb090f474616914f0)
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=1739293816-xJhXk0HamSxofgLHDNpoJw4kVLIPkcus-0-04a4888dce387578126f09b76ed48c7e)
图3-18 表数据管理窗口
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/50_05.jpg?sign=1739293816-5Q6ZmA8flKGYdzWL6DBZEcOT1kM8uQa1-0-f79d90742dc42094fd77814a68dde1ce)
图3-19 管理学生表(student)中的数据
● 对照学生表(student)中的字段,可以直接在表格中输入或者修改学生信息,一条记录添加或者修改结束以后,通过在不同记录间切换光标,可以实现数据的自动保存。
● 把光标移动到最后一条记录上,单击键盘上的向下方向键〈↓〉,可以生成一条新的空白记录。
● 选择一条或者多条记录,单击鼠标右键,选择“删除记录”命令,则可把所选中的记录删除。
● 窗口左下角的图标按钮,也可以用来完成数据的添加、修改和删除操作。
3.6.2 使用INSERT语句向表中插入数据
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_01.jpg?sign=1739293816-ogSnFVSy3c6w5BVkIn0BU1qxwonVO3nJ-0-ada803656ec10fdf73f8283f86c15fee)
3.6.2
使用INSERT语句可以向表中插入数据,其语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_02.jpg?sign=1739293816-QGF5pHF463DneG4xwnVRjLNTwcPIyvrg-0-2f298f5850148da33e5af8f4592879f2)
说明:
●表名后面的字段列表要与VALUES子句中表达式值的列表一一对应,即个数要相等,数据类型也要匹配。字符型数据或日期/时间类型的数据需要使用单引号括起来。
● INSERT语句也可以省略字段列表,但必须插入一行完整的数据,且必须按照表中定义的字段顺序为全部字段提供值。
【示例3-13】 向学生表(student)中插入一行数据。运行结果如图3-20所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_04.jpg?sign=1739293816-HVrtKIKqNcOCrNKWNV2aZdiB5VSPn2qR-0-3e4a26cbb88c09f3767804ed83bd59e8)
说明:执行成功以后,可以通过表数据管理窗口进行查看,如图3-21所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_06.jpg?sign=1739293816-uCxXflnTQevzpuT5Q0xH78L6vK0QyekD-0-d15c00702e6776c468b5af64d2c6d041)
图3-20 使用INSERT语句向学生表(student)中插入一行数据
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_07.jpg?sign=1739293816-09yVsj9YmCasZIvqpqrPpacqokYPwWr6-0-e7f7fc2d0c3207e38c8f81433435d628)
图3-21 在表数据管理窗口中查看所插入的数据
另外,INSERT语句也可以一次性插入多行数据,即在VALUES子句的后面加上多个表达式列表,并以逗号隔开。
【示例3-14】 向学生表(student)中插入多行数据。运行结果如图3-22所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_08.jpg?sign=1739293816-NpzXwdRgFG1FLvM14qTtOkNXDMBxqQAM-0-77904e83e63a59abf17712334b20dd12)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_01.jpg?sign=1739293816-LhF5oCkLLXS0aCq2RzOrZq8QAi1BVjrY-0-39916f6eb0af1a67450173675a82c8fc)
图3-22 使用INSERT语句向学生表(student)中插入多行数据
3.6.3 使用UPDATE语句修改表中数据
使用UPDATE语句可以对表中的一列或多列数据进行修改,修改时必须指定需要修改的字段,并且赋予新值。UPDATE语句的语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_02.jpg?sign=1739293816-J4n2Dmx9yp4m2JE3jxmpIdvyIG2RNrg4-0-786f0c212ba1b1c4c753829611810aac)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_03.jpg?sign=1739293816-nkdzi17TG3ndByDluknZMHnOiS98DVMK-0-d3886ff37c57dd2070fffa1678d613d3)
3.6.3
说明:通过WHERE子句可以限定要更新的数据行。
【示例3-15】 修改学生表(student)中学号为1308013103的数据记录,把其班级更改为“网络131”,备注更改为“班长”。运行结果如图3-23所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_05.jpg?sign=1739293816-SXpmKtcWnP5ezgwNntAIEnlfGnnU3Nai-0-e2511f73d64dcb47cc20764b1759917c)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_06.jpg?sign=1739293816-evt8AGx4sufcs1uBOpFETjHmXjbpi15D-0-99323046b8a5b2374e4da7681a74f43a)
图3-23 使用UPDATE语句修改学生表(student)中的数据
3.6.4 使用DELETE语句删除表中数据
使用DELETE语句可以删除表中的一行或多行数据。DELETE语句的语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_07.jpg?sign=1739293816-3jqEWqXebbkP8GbJ0rSIdQZrO92clXbj-0-40c64cba6c18c7e89eb6b30c42feb750)
3.6.4
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_01.jpg?sign=1739293816-QUBHsPKi6cKsx945yDz7ZjwLo66U9hty-0-b004d5f91535f5333a9a7c07f3cc85ef)
说明:通过WHERE子句可以限定要删除的数据行,否则清空整个数据表。
【示例3-16】 删除学生表(student)中学号为1308013105的数据记录。运行结果如图3-24所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_03.jpg?sign=1739293816-z0hhMrMvpw9eaQAugT9s9q5Onvi3IVXQ-0-47400aacab8fa1379d5deff401076e02)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_04.jpg?sign=1739293816-enAcVx9Vr7GofzeG70RC0zv7rgzy1XmK-0-9068423b3ef52556421c818deb48bdf8)
图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=1739293816-NDxSCJY152A8lOunJuWVTwnwNxG9iatG-0-65a1598e5affc4d19c1b768dc953a894)
说明: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=1739293816-21gLWxBxCl98Xk9mc0IAHCsOJHPYtuZo-0-59e593810bd56da0dd503bd40fe0cb48)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_08.jpg?sign=1739293816-YnlCLiEvB0gGau23Ghib1SOXrmFVByBf-0-2e3e8edf1e0bcbedaed9ad3c95212f44)
图3-25 使用TRUNCATE语句清空学生表(student)中的数据