在MySQL数据库中增加、修改、删除数据
12002本课介绍
本课将继续学习关系型数据库中的数据管理基本操作,包括新增、修改和删除数据。我们将介绍两种操作方法:使用Navicat图形界面和运行SQL语句。在之前的学习中,我们重点讲解了SQL语句操作,现在将带领大家通过Navicat图形界面执行这些操作,以加强对数据管理的理解。
1. 在数据表中增加数据
示例:在"student"数据表中,需要增加一条学生的信息。
学号(SId):14,
姓名(Sname):王小花,
出生日期(Sage):2012-03-01,
性别(Ssex):女
使用Navicat增加数据
- 选中"student"数据表,双击或者点击右键并选择"打开表"。
- 打开后,在数据表的左下角点击" + ",即可增加在表中增加一行。
- 在增加的行中,依次输入学生的信息,确认无误后,在数据表的左下角点击" √ ",即可保存增加的数据。
- 增加数据成功。
需要注意的是,如果只需要在数据表中增加一条或几条数据,使用 Navicat 的图形界面操作是完全没有问题的;但如果需要增加多条数据,建议使用 SQL 语句操作,这样更加简单快捷。
使用INSERT语句增加数据
在 SQL 语句中,我们使用 INSERT
语句用于向表中插入新的行。以下是INSERT语句的基本语法:
INSERT INTO table_name (column1, column2, ...)
VALUES (value1, value2, ...);
其中:
INSERT INTO
:关键字,用于指示要插入数据的目标表。table_name
:要插入数据的目标表的名称。column1, column2, ...
:用于指定要插入数据的列名。VALUES (value1, value2, ...)
:用于指定要插入列中的实际值。
例如,使用下面的 SQL 语句向"student"数据表再增加一条'王小花'的数据:
INSERT INTO student (SId,Sname, Sage,Ssex)
VALUES (14,'王小花','2012-03-01', '女');
- 复制这段语句,并在Navicat中运行后,出现"Affected rows:1",代表新增数据成功。
- 再次打开"student"数据表,你会看到这条增加的学生信息。
前面我们提到,想要在数据表增加多条数据,可以使用 SQL 语句。在INSERT语句的基本语法中,你可以在VALUES关键字后面列出多组数据:
INSERT INTO student (SId,Sname, Sage,Ssex)
VALUES
(16,'安娜','2015-08-08', '女'),
(17,'吕晓峰','2014-11-08', '男'),
(18,'王维','2016-08-17', '男'),
(19,'宋词','2015-10-11', '男');
在Navicat中运行这段语句后,可以看到数据新增成功了。
2. 在数据表中修改数据
示例:在"student"数据表中,把学生'吕晓峰'的出生日期(Sage),改成'2015-11-18'。
使用Navicat修改数据
- 打开"student"数据表后,选中要修改的行。
- 单击要修改的单元格,即可编辑数据。
- 确认无误后,在数据表的左下角点击" √ ",即可保存修改的数据。
需要注意的是,在修改数据时,请务必仔细核对,确保修改准确无误。Navicat 修改数据是不可逆的,一旦保存,就无法撤销。此外,Navicat 的数据编辑通常只支持单个数据行的修改,不支持批量操作。如果需要批量修改数据,建议使用 SQL 语句。
使用UPDATE语句修改数据
在 SQL 语句中,我们使用UPDATE
语句用于修改表中的数据。以下是UPDATE语句的基本语法:
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
其中:
UPDATE
:关键字,表示要执行修改操作。table_name
:要修改数据的表名。SET
: 关键字,用于指定要修改的列和它们对应的新值。column1 = value1, column2 = value2, ...
: 在SET
后面列出要修改的列和它们的新值。每个列名后面跟着等号和新值。你可以指定多个列的修改,用逗号分隔。WHERE
: 可选的关键字,用于指定修改的条件。如果省略 WHERE 子句,则数据表中所有行都会被修改。如果指定了 WHERE 子句,则只有满足条件的行才会被修改。condition
: 是用于筛选要修改的数据行的条件。
例如,使用下面的 SQL 语句,把"student"数据表中学生'吕晓峰'的姓名(Sname),改成'李晓峰'。
UPDATE student
SET Sname = '李晓峰' WHERE Sname = '吕晓峰';
- 复制这段语句,并在Navicat中运行后,出现"Affected rows:1",代表修改数据成功。
- 再次打开"student"数据表,你会看到这条学生信息已经被修改了。
前面我们提到,SQL 语句可以同时修改多个列的值。在UPDATE语句的基本语法中,你只需在SET关键字后面列出所有的列和值,用逗号分隔:
UPDATE student
SET Sname = '刘安娜',Sage ='2016-01-01' WHERE Sname = '安娜';
在Navicat中运行这段语句后,可以看到数据修改成功了。
再次强调:SQL 修改数据后是不可撤销的。一旦执行了修改操作,数据库中的数据就会被永久地改变,无法恢复到之前的状态。因此,在执行 SQL 修改操作之前,请务必确保数据的准确性,并谨慎考虑每一步操作;在UPDATE语句中,如果省略WHERE子句,UPDATE语句将修改数据表中的所有行。因此,除非你确实想修改所有行,否则应该始终使用WHERE子句。
3. 在数据表中删除数据
示例:在"student"数据表中,把多余的'王小花'的数据删除。
使用Navicat删除数据表中的数据
- 打开"student"数据表后,选中要删除的行。
- 单击右键,选择"删除记录";或者在数据表的左下角点击" - "。
- 点击后,会有弹窗提示:"你确定要删除一条记录吗?",再次确认要删除的信息无误,选择"删除一条记录"。
- 删除数据成功。
虽然 Navicat 提供了删除数据的功能,但同样建议在执行大量数据删除时使用 SQL 语句。通过编写精确的 SQL 语句,你可以明确指定要删除的数据条件,减少操作失误的风险。
使用DELETE语句删除数据表中的数据
在 SQL 语句中,我们使用DELETE
语句用于删除数据表中的行。以下是DELETE语句的基本语法:
DELETE FROM table_name
WHERE condition;
其中:
DELETE FROM
:关键字表示要删除数据。table_name
:指定要从中删除数据的表名。WHERE
:可选的子句,用于指定删除数据的条件。如果不指定条件,则会删除表中的所有数据。condition
: 是用于筛选要删除的数据行的条件。
例如,使用下面的 SQL 语句,把"student"数据表中学生'王维'的数据删除。
DELETE FROM student
WHERE Sname = '王维';
- 复制这段语句,并在Navicat中运行后,出现"Affected rows:1",代表删除数据成功。
- 再次打开"student"数据表,你会看到这条学生信息被删除了。
再次强调:删除数据是一项敏感操作,因为它是不可逆的,并且容易出错。建议在执行删除操作时格外谨慎,确保你真正打算删除的是正确的数据。尤其是在生产环境中,误删数据可能会导致严重的后果;在使用 SQL 删除语句时,如果省略WHERE子句,DELETE语句将删除表中的所有行。因此,除非你确实想删除所有行,否则应该始终使用WHERE子句。
4.删除数据表和数据库
使用Navicat删除数据表和数据库
- 选中你要删除的数据表或者数据库,点击右键并选择"删除表"或者"删除数据库"。
- 点击后,会有弹窗提示:你确定要删除"XXX"吗?,注意:这里需要先勾选"我了解此操作是永久性的且无法撤消",才能进行删除的操作。因为删除数据表或者数据库是一个敏感的操作,数据一旦删除就无法找回,所以务必谨慎使用。
读菜鸟教程,使用DROP语句删除数据表和数据库
在 SQL 语句中,我们使用 DROP 语句用于删除数据表和数据库。以下是 DROP 语句的基本语法:
- DROP TABLE 语句用于删除表
DROP TABLE table_name
- DROP DATABASE 语句用于删除数据库
DATABASE database_name
接下来,可以先在你的数据库理创建一个新的数据库,和一个新的数据表。然后通过阅读菜鸟教程:SQL DROP,来尝试删除数据表和数据库的操作。