![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=1739315079-DWLbxsZmdORC0CZ49Cx0dQS4LTZuZArH-0-4fe6af46d0123f0393d4506c01a54868)
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=1739315079-ODspcRQQvoRXvfT2xZ8Q2oh3lNJtKs4i-0-9bdceaa834a8fee0a07244d52ecb719d)
图3-18 表数据管理窗口
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/50_05.jpg?sign=1739315079-1Y43ZwMnWCKNruqeVIC4D4XuFZQYvQ3Z-0-1587bdf046aad75e49c4d8a86a1a313b)
图3-19 管理学生表(student)中的数据
● 对照学生表(student)中的字段,可以直接在表格中输入或者修改学生信息,一条记录添加或者修改结束以后,通过在不同记录间切换光标,可以实现数据的自动保存。
● 把光标移动到最后一条记录上,单击键盘上的向下方向键〈↓〉,可以生成一条新的空白记录。
● 选择一条或者多条记录,单击鼠标右键,选择“删除记录”命令,则可把所选中的记录删除。
● 窗口左下角的图标按钮,也可以用来完成数据的添加、修改和删除操作。
3.6.2 使用INSERT语句向表中插入数据
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_01.jpg?sign=1739315079-AAM7FaiXvZZUJLd0O2WMeFJtaXFaRBeB-0-1ab9d71f755ba08eb39cd9b393b98e05)
3.6.2
使用INSERT语句可以向表中插入数据,其语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_02.jpg?sign=1739315079-4AnadkgyAhcepIFDMz73ugPMv6B6ArK3-0-ddeb7319c8c818ede96984ea83642e0b)
说明:
●表名后面的字段列表要与VALUES子句中表达式值的列表一一对应,即个数要相等,数据类型也要匹配。字符型数据或日期/时间类型的数据需要使用单引号括起来。
● INSERT语句也可以省略字段列表,但必须插入一行完整的数据,且必须按照表中定义的字段顺序为全部字段提供值。
【示例3-13】 向学生表(student)中插入一行数据。运行结果如图3-20所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_04.jpg?sign=1739315079-Uig6K1lZLBz4zMqlv99T6k5Z9eS2BggD-0-9eae0148dd31c55fe15fedfc10a6e7bb)
说明:执行成功以后,可以通过表数据管理窗口进行查看,如图3-21所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_06.jpg?sign=1739315079-sCuccxx2JJ8eWhMmgSJWKrbbQ0zRs78I-0-6314cb681c37c62e8d810b6139749f69)
图3-20 使用INSERT语句向学生表(student)中插入一行数据
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_07.jpg?sign=1739315079-bo7XjcNv36nfPvYR0Fan8Tp4UNKHattt-0-f615f7b5a0d142e53e30e741efdcc206)
图3-21 在表数据管理窗口中查看所插入的数据
另外,INSERT语句也可以一次性插入多行数据,即在VALUES子句的后面加上多个表达式列表,并以逗号隔开。
【示例3-14】 向学生表(student)中插入多行数据。运行结果如图3-22所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/51_08.jpg?sign=1739315079-LowX1kRstZPXcnolJX6tp8SvkvhlbEsz-0-9119ede77369323e337dce6b2f281b3c)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_01.jpg?sign=1739315079-cCVZy8Cl3f5wJfMoboPGfwFHK3J3JVzu-0-1824a797f1987498a833c6d08e14518d)
图3-22 使用INSERT语句向学生表(student)中插入多行数据
3.6.3 使用UPDATE语句修改表中数据
使用UPDATE语句可以对表中的一列或多列数据进行修改,修改时必须指定需要修改的字段,并且赋予新值。UPDATE语句的语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_02.jpg?sign=1739315079-fkrM5Eo807MBF7CtbiV5vz4u565C77cH-0-fb3bcd5f49eb0eeb3943473fe01fb958)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_03.jpg?sign=1739315079-HU7Luf62WHlDx1RucdyI3vm1h0VOFoLM-0-68b57964dc72705f5d18dfd45ec2a0b7)
3.6.3
说明:通过WHERE子句可以限定要更新的数据行。
【示例3-15】 修改学生表(student)中学号为1308013103的数据记录,把其班级更改为“网络131”,备注更改为“班长”。运行结果如图3-23所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_05.jpg?sign=1739315079-SI8xjSRpg2vqQdIBSj0f3dj2TNXeCzwT-0-12f179f7de40d248c07dc9b8850b15e3)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_06.jpg?sign=1739315079-4b78jPx3WHRz1ke6x7jCslHccQaiNKG3-0-2412176cbbdcd0cbbe226e673e3bde9a)
图3-23 使用UPDATE语句修改学生表(student)中的数据
3.6.4 使用DELETE语句删除表中数据
使用DELETE语句可以删除表中的一行或多行数据。DELETE语句的语法格式如下。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/52_07.jpg?sign=1739315079-paOjhxe6IBnpE8ixSsDTl6FzU6CgTHem-0-4dfb877a2a1bd81675904f112551c133)
3.6.4
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_01.jpg?sign=1739315079-uGmyzvtKlG8J90bAhuiZX0PzSlT42bJH-0-946d31f31020511884b0bf87a28bbd4d)
说明:通过WHERE子句可以限定要删除的数据行,否则清空整个数据表。
【示例3-16】 删除学生表(student)中学号为1308013105的数据记录。运行结果如图3-24所示。
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_03.jpg?sign=1739315079-lvGsdODGijbnunx3AWI6YyM3ChSLqyBS-0-0561721c0ed3c3b6f1d0b286307f588a)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_04.jpg?sign=1739315079-nXwhkITq5Ge5k4oV2CAghO1Fb7xdZVUU-0-54547ead8ca055972bc505470b7dd181)
图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=1739315079-YrWA9Ft9Zygww5Ro9refIryLg3fWPfOm-0-441b72b17c6bee64acc5081bb3b14334)
说明: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=1739315079-Zpd5GtmNbWMIHLwPQNCy0yqiW1yZR3MU-0-216c630fa1b156f7eb3dfa0d6682839f)
![](https://epubservercos.yuewen.com/6BB263/21570844108788506/epubprivate/OEBPS/Images/53_08.jpg?sign=1739315079-6CH3MRDHe91hTRrW8gzmMAk1iHh5Esb3-0-02130c04dfaa1999a24b74d5e603ccd3)
图3-25 使用TRUNCATE语句清空学生表(student)中的数据