- MySQL数据库应用与管理 第2版
- 鲁大林主编
- 1327字
- 2021-11-12 11:38:54
3.6 操作表中数据
在创建了数据表后,就可以向表中添加数据;在插入了数据后,就可以对数据进行修改或者删除操作。
3.6.1 使用Navicat对话方式操作表中数据
以在学生表(student)中插入、修改、删除数据为例,使用Navicat对话方式操作表中数据的步骤如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/50_03.jpg?sign=1739058627-seYQO412qigsfWl0Murb3fXbRFvbdmJc-0-1b2e1c1d777ba6cbcba29f4e7c01f12c)
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=1739058627-RxYLR47iftoZE7hUXFfvIim6Cj7nlYZb-0-514af2298fea594d4daba9555c51513a)
图3-18 表数据管理窗口
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/50_05.jpg?sign=1739058627-RqWRA8HIHukh1SIF5b7aCxjVL2jrddK4-0-7746e0533d0aee92a012fba74de4d691)
图3-19 管理学生表(student)中的数据
● 对照学生表(student)中的字段,可以直接在表格中输入或者修改学生信息,一条记录添加或者修改结束以后,通过在不同记录间切换光标,可以实现数据的自动保存。
● 把光标移动到最后一条记录上,单击键盘上的向下方向键〈↓〉,可以生成一条新的空白记录。
● 选择一条或者多条记录,单击鼠标右键,选择“删除记录”命令,则可把所选中的记录删除。
● 窗口左下角的图标按钮,也可以用来完成数据的添加、修改和删除操作。
3.6.2 使用INSERT语句向表中插入数据
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_01.jpg?sign=1739058627-HtKvxm9GQUmJgIIEOF6L7k1mcRw5odT1-0-9627ec4d555cde76a1661c696d67d83a)
3.6.2
使用INSERT语句可以向表中插入数据,其语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_02.jpg?sign=1739058627-Iperubdi2aK3PTntb3Vt8770VGFGe86e-0-9a09c09f10bc7dc71bae90975b156e3d)
说明:
●表名后面的字段列表要与VALUES子句中表达式值的列表一一对应,即个数要相等,数据类型也要匹配。字符型数据或日期/时间类型的数据需要使用单引号括起来。
● INSERT语句也可以省略字段列表,但必须插入一行完整的数据,且必须按照表中定义的字段顺序为全部字段提供值。
【示例3-13】 向学生表(student)中插入一行数据。运行结果如图3-20所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_04.jpg?sign=1739058627-wRfFxC2coDSpfbtLCQIMsaiOcPCfgFwV-0-aae8c0f2ba9de9ebc4f08883ab83e474)
说明:执行成功以后,可以通过表数据管理窗口进行查看,如图3-21所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_06.jpg?sign=1739058627-49ZNCOCJb1DwdipH2SXBJUaxkm19AzJb-0-83b68e271f804279d126881d26c96b07)
图3-20 使用INSERT语句向学生表(student)中插入一行数据
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_07.jpg?sign=1739058627-VmJHqK7KgxBednJDOaeLyGT6PmAzhib6-0-e6a574b0e8d33cd6fbdfcb2eceda9758)
图3-21 在表数据管理窗口中查看所插入的数据
另外,INSERT语句也可以一次性插入多行数据,即在VALUES子句的后面加上多个表达式列表,并以逗号隔开。
【示例3-14】 向学生表(student)中插入多行数据。运行结果如图3-22所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_08.jpg?sign=1739058627-Ge1USxmz5lj48nIG6lyynNjwSUoUBoE3-0-db71c502c44084ea7f7381bc35cb31a1)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_01.jpg?sign=1739058627-tVQsHNpnIIuQdxRkbAZKQVk5JyhX9plG-0-b9f3a5328249895c30786aa66674b737)
图3-22 使用INSERT语句向学生表(student)中插入多行数据
3.6.3 使用UPDATE语句修改表中数据
使用UPDATE语句可以对表中的一列或多列数据进行修改,修改时必须指定需要修改的字段,并且赋予新值。UPDATE语句的语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_02.jpg?sign=1739058627-5rp43k4H3e97EWzTmPUL1pM2z3MUbeaf-0-bc48e6fc65db2a5ee52875611e7abd07)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_03.jpg?sign=1739058627-V5LpCF9d1zgIR0UpCh31wWrLoamBpR8n-0-9ad759fd198a7d82012352ee394b180d)
3.6.3
说明:通过WHERE子句可以限定要更新的数据行。
【示例3-15】 修改学生表(student)中学号为1308013103的数据记录,把其班级更改为“网络131”,备注更改为“班长”。运行结果如图3-23所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_05.jpg?sign=1739058627-ApxyjMa285dHzNPhoqlLcGOpIHTfqRLM-0-53db9350914904712ef39e8a6d84708a)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_06.jpg?sign=1739058627-cI7SCNRoiDx92WHFLUXQmvHgQXxAuczj-0-cf6022c1af88eaee100615174dd671e3)
图3-23 使用UPDATE语句修改学生表(student)中的数据
3.6.4 使用DELETE语句删除表中数据
使用DELETE语句可以删除表中的一行或多行数据。DELETE语句的语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_07.jpg?sign=1739058627-HaTgTJcrj72RQtJvkKH1cJhcZVGhd9el-0-654d09479895c6d9d62f7591d97b168e)
3.6.4
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_01.jpg?sign=1739058627-PD6FTfNpXuEiK7A2IAOC2ntlEveKbGEL-0-7150513bd671b868fa6fdf2a123121bc)
说明:通过WHERE子句可以限定要删除的数据行,否则清空整个数据表。
【示例3-16】 删除学生表(student)中学号为1308013105的数据记录。运行结果如图3-24所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_03.jpg?sign=1739058627-IOCIjOAXfMbfmLXlMxnjHhb2oYz1uHID-0-7e34c73a0f3534780e45bb38c4972faf)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_04.jpg?sign=1739058627-1rfFA53Zh78XbQrP4AdhMtYDNyjhRiHY-0-fba08019c6a56cf5e367d34cddce5ce7)
图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=1739058627-m4w4v438ZJinbb5uFTQkFhvmNg2oyHMk-0-11dd6ef6e538e6ddbe5ebe99b3f2504a)
说明: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=1739058627-rYN2i0jYRKsdGjVR471crDidK71OiYE0-0-cd671b3fe03072336a49e40a197151f2)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_08.jpg?sign=1739058627-yyrZQLj6q7fjzIxZnWaTRHve4ZcGCDmU-0-1e6d68d6b6a00336129649b5f18bf53e)
图3-25 使用TRUNCATE语句清空学生表(student)中的数据