![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=1739339779-H5GpSU1KWlh4DCSsNrYppG6xA9obZc4O-0-758ba434e5285eea916b41a6aa50474a)
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=1739339779-FSATVEFLXrhd88GzFf127ByDj4OKbDA9-0-b2421871aae5b5d1b8b86f9fe070e545)
图3-18 表数据管理窗口
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/50_05.jpg?sign=1739339779-EWpFeKzNwC9AiKYjaC3lO5diBu81gyke-0-6336f97929d7258ce34d5996407f312b)
图3-19 管理学生表(student)中的数据
● 对照学生表(student)中的字段,可以直接在表格中输入或者修改学生信息,一条记录添加或者修改结束以后,通过在不同记录间切换光标,可以实现数据的自动保存。
● 把光标移动到最后一条记录上,单击键盘上的向下方向键〈↓〉,可以生成一条新的空白记录。
● 选择一条或者多条记录,单击鼠标右键,选择“删除记录”命令,则可把所选中的记录删除。
● 窗口左下角的图标按钮,也可以用来完成数据的添加、修改和删除操作。
3.6.2 使用INSERT语句向表中插入数据
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_01.jpg?sign=1739339779-gQZ7XW0dJFgwEc5mTiBws9n3k1kk2Kfr-0-834ccf918e43a0da8520d3725fd59100)
3.6.2
使用INSERT语句可以向表中插入数据,其语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_02.jpg?sign=1739339779-EJxsDhCTbj3amCxxf0KDM2nREjmp0h6h-0-ec249a848dac802290309a7d7042589b)
说明:
●表名后面的字段列表要与VALUES子句中表达式值的列表一一对应,即个数要相等,数据类型也要匹配。字符型数据或日期/时间类型的数据需要使用单引号括起来。
● INSERT语句也可以省略字段列表,但必须插入一行完整的数据,且必须按照表中定义的字段顺序为全部字段提供值。
【示例3-13】 向学生表(student)中插入一行数据。运行结果如图3-20所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_04.jpg?sign=1739339779-8j6sWMuEPrjbcEv7s2Z0fxp0P6kwQw2p-0-72aa75bc65dffcf0685dae1cd6d03625)
说明:执行成功以后,可以通过表数据管理窗口进行查看,如图3-21所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_06.jpg?sign=1739339779-uobDx31YZcvOGo74vdFN6KwstLubWmzR-0-748593f5dfb602e73575f76dedcaf6cc)
图3-20 使用INSERT语句向学生表(student)中插入一行数据
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_07.jpg?sign=1739339779-NjHSosip3USboiZ4oK5H8AHyeCEtqYCs-0-82f41848dec1c32068ec43404f125ae1)
图3-21 在表数据管理窗口中查看所插入的数据
另外,INSERT语句也可以一次性插入多行数据,即在VALUES子句的后面加上多个表达式列表,并以逗号隔开。
【示例3-14】 向学生表(student)中插入多行数据。运行结果如图3-22所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_08.jpg?sign=1739339779-ofF9TUjbmpjdrBt6zkxh0KbCSBElrTFm-0-ece301cb0d5589abd053a5f41c7bffc5)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_01.jpg?sign=1739339779-2GigjEdRggZKDpSquGH2Imp0yfzevgXk-0-ea39eb8110782561fdf7102dc9022f2f)
图3-22 使用INSERT语句向学生表(student)中插入多行数据
3.6.3 使用UPDATE语句修改表中数据
使用UPDATE语句可以对表中的一列或多列数据进行修改,修改时必须指定需要修改的字段,并且赋予新值。UPDATE语句的语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_02.jpg?sign=1739339779-TUKDH3Bss9Cs2UuvAcUMemb1szz5xRom-0-45e3f9eba2e7b32d23655703e3dcc2a9)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_03.jpg?sign=1739339779-wnEtSurEdq9CBlSrITymIJ09b8y7Trzr-0-0de23be8b96497c57bf0523797156abd)
3.6.3
说明:通过WHERE子句可以限定要更新的数据行。
【示例3-15】 修改学生表(student)中学号为1308013103的数据记录,把其班级更改为“网络131”,备注更改为“班长”。运行结果如图3-23所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_05.jpg?sign=1739339779-NCu84Uyd2K1GVWodFoVCEL6sq9LrTDLT-0-99ec4f54c701b57ccd51f40f47f6ba8b)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_06.jpg?sign=1739339779-Xj03NoSOmGIW6MhyCIV8sUnKwGTihbMw-0-51e396e7f8dacd35f8929f15f8c795ea)
图3-23 使用UPDATE语句修改学生表(student)中的数据
3.6.4 使用DELETE语句删除表中数据
使用DELETE语句可以删除表中的一行或多行数据。DELETE语句的语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_07.jpg?sign=1739339779-ub1tuauzyJcMBPTMRwGh6T4RdZrsRUoY-0-9de24390d50e366d21de65bd935e217a)
3.6.4
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_01.jpg?sign=1739339779-NIU1nQyvBkZmA9ZuJIyd8YStZGZEihdv-0-5098fdcecb2bbaea3818b79005941977)
说明:通过WHERE子句可以限定要删除的数据行,否则清空整个数据表。
【示例3-16】 删除学生表(student)中学号为1308013105的数据记录。运行结果如图3-24所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_03.jpg?sign=1739339779-wrWSrU8zGVUjMt4x3gJ6I2lGdB3kiGmB-0-d95bc4c0727ad8e5b1ce5bb690ebac11)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_04.jpg?sign=1739339779-s1K2MMVlEfnEdkvfr0XmS6oJjHaHUozN-0-fe783102f861f4acd60096b72e8be0f5)
图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=1739339779-D0uIAysp14P1qIZbXQAdMsKb6jGhAU87-0-39f1c82a9c54331c9c14050f4093d2d2)
说明: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=1739339779-Tr3jI2HkA9QzkHaWU0dOWOtYwLLOqBqG-0-5a23fbdc05470fe6da9cf680a05aec6b)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_08.jpg?sign=1739339779-FdT1ZT4zD4Q228d47g23DmfmDJKJ6ESa-0-1d0405f20cf34b543bd558a3e828032b)
图3-25 使用TRUNCATE语句清空学生表(student)中的数据