在MySQL数据库中增加、修改、删除数据

12002

本课介绍

本课将继续学习关系型数据库中的数据管理基本操作,包括新增、修改和删除数据。我们将介绍两种操作方法:使用Navicat图形界面和运行SQL语句。在之前的学习中,我们重点讲解了SQL语句操作,现在将带领大家通过Navicat图形界面执行这些操作,以加强对数据管理的理解。

1. 在数据表中增加数据

示例:在"student"数据表中,需要增加一条学生的信息。

  1. 学号(SId):14
  2. 姓名(Sname):王小花,
  3. 出生日期(Sage):2012-03-01,
  4. 性别(Ssex):女

使用Navicat增加数据

  1. 选中"student"数据表,双击或者点击右键并选择"打开表"。

navicat-zj1.png

  1. 打开后,在数据表的左下角点击" + ",即可增加在表中增加一行。

navicat-zj2.png

navicat-zj3.png

  1. 在增加的行中,依次输入学生的信息,确认无误后,在数据表的左下角点击" √ ",即可保存增加的数据。

navicat-zj4.png

  1. 增加数据成功。

navicat-zj5.png

需要注意的是,如果只需要在数据表中增加一条或几条数据,使用 Navicat 的图形界面操作是完全没有问题的;但如果需要增加多条数据,建议使用 SQL 语句操作,这样更加简单快捷。

使用INSERT语句增加数据

在 SQL 语句中,我们使用 INSERT 语句用于向表中插入新的行。以下是INSERT语句的基本语法:

  1. INSERT INTO table_name (column1, column2, ...)
  2. VALUES (value1, value2, ...);

其中:

  • INSERT INTO:关键字,用于指示要插入数据的目标表。
  • table_name:要插入数据的目标表的名称。
  • column1, column2, ...:用于指定要插入数据的列名。
  • VALUES (value1, value2, ...):用于指定要插入列中的实际值。

例如,使用下面的 SQL 语句向"student"数据表再增加一条'王小花'的数据:

  1. INSERT INTO student (SId,Sname, Sage,Ssex)
  2. VALUES (14,'王小花','2012-03-01', '女');
  1. 复制这段语句,并在Navicat中运行后,出现"Affected rows:1",代表新增数据成功。

sql-zj1.png

  1. 再次打开"student"数据表,你会看到这条增加的学生信息。

sql-zj2.png

前面我们提到,想要在数据表增加多条数据,可以使用 SQL 语句。在INSERT语句的基本语法中,你可以在VALUES关键字后面列出多组数据:

  1. INSERT INTO student (SId,Sname, Sage,Ssex)
  2. VALUES
  3. (16,'安娜','2015-08-08', '女'),
  4. (17,'吕晓峰','2014-11-08', '男'),
  5. (18,'王维','2016-08-17', '男'),
  6. (19,'宋词','2015-10-11', '男');

在Navicat中运行这段语句后,可以看到数据新增成功了。

sql-zj3.png

sql-zj4.png

2. 在数据表中修改数据

示例:在"student"数据表中,把学生'吕晓峰'的出生日期(Sage),改成'2015-11-18'。

使用Navicat修改数据

  1. 打开"student"数据表后,选中要修改的行。

navicat-xg1.png

  1. 单击要修改的单元格,即可编辑数据。

navicat-xg2.png

  1. 确认无误后,在数据表的左下角点击" √ ",即可保存修改的数据。

navicat-xg3.png

需要注意的是,在修改数据时,请务必仔细核对,确保修改准确无误。Navicat 修改数据是不可逆的,一旦保存,就无法撤销。此外,Navicat 的数据编辑通常只支持单个数据行的修改,不支持批量操作。如果需要批量修改数据,建议使用 SQL 语句。

使用UPDATE语句修改数据

在 SQL 语句中,我们使用UPDATE语句用于修改表中的数据。以下是UPDATE语句的基本语法:

  1. UPDATE table_name
  2. SET column1 = value1, column2 = value2, ...
  3. WHERE condition;

其中:

  • UPDATE:关键字,表示要执行修改操作。
  • table_name:要修改数据的表名。
  • SET: 关键字,用于指定要修改的列和它们对应的新值。
  • column1 = value1, column2 = value2, ...: 在 SET后面列出要修改的列和它们的新值。每个列名后面跟着等号和新值。你可以指定多个列的修改,用逗号分隔。
  • WHERE: 可选的关键字,用于指定修改的条件。如果省略 WHERE 子句,则数据表中所有行都会被修改。如果指定了 WHERE 子句,则只有满足条件的行才会被修改。
  • condition: 是用于筛选要修改的数据行的条件。

例如,使用下面的 SQL 语句,把"student"数据表中学生'吕晓峰'的姓名(Sname),改成'李晓峰'。

  1. UPDATE student
  2. SET Sname = '李晓峰' WHERE Sname = '吕晓峰';
  1. 复制这段语句,并在Navicat中运行后,出现"Affected rows:1",代表修改数据成功。

sql-xg1.png

  1. 再次打开"student"数据表,你会看到这条学生信息已经被修改了。

sql-xg2.png

前面我们提到,SQL 语句可以同时修改多个列的值。在UPDATE语句的基本语法中,你只需在SET关键字后面列出所有的列和值,用逗号分隔:

  1. UPDATE student
  2. SET Sname = '刘安娜',Sage ='2016-01-01' WHERE Sname = '安娜';

在Navicat中运行这段语句后,可以看到数据修改成功了。

sql-xg3.png

sql-xg4.png

再次强调:SQL 修改数据后是不可撤销的。一旦执行了修改操作,数据库中的数据就会被永久地改变,无法恢复到之前的状态。因此,在执行 SQL 修改操作之前,请务必确保数据的准确性,并谨慎考虑每一步操作;在UPDATE语句中,如果省略WHERE子句,UPDATE语句将修改数据表中的所有行。因此,除非你确实想修改所有行,否则应该始终使用WHERE子句。

3. 在数据表中删除数据

示例:在"student"数据表中,把多余的'王小花'的数据删除。

使用Navicat删除数据表中的数据

  1. 打开"student"数据表后,选中要删除的行。

navicat-sc1.png

  1. 单击右键,选择"删除记录";或者在数据表的左下角点击" - "。

navicat-sc2.png

navicat-sc5.png

  1. 点击后,会有弹窗提示:"你确定要删除一条记录吗?",再次确认要删除的信息无误,选择"删除一条记录"。

navicat-sc3.png

  1. 删除数据成功。

navicat-sc4.png

虽然 Navicat 提供了删除数据的功能,但同样建议在执行大量数据删除时使用 SQL 语句。通过编写精确的 SQL 语句,你可以明确指定要删除的数据条件,减少操作失误的风险。

使用DELETE语句删除数据表中的数据

在 SQL 语句中,我们使用DELETE语句用于删除数据表中的行。以下是DELETE语句的基本语法:

  1. DELETE FROM table_name
  2. WHERE condition;

其中:

  • DELETE FROM:关键字表示要删除数据。
  • table_name:指定要从中删除数据的表名。
  • WHERE:可选的子句,用于指定删除数据的条件。如果不指定条件,则会删除表中的所有数据。
  • condition: 是用于筛选要删除的数据行的条件。

例如,使用下面的 SQL 语句,把"student"数据表中学生'王维'的数据删除。

  1. DELETE FROM student
  2. WHERE Sname = '王维';
  1. 复制这段语句,并在Navicat中运行后,出现"Affected rows:1",代表删除数据成功。

sql-sc1.png

  1. 再次打开"student"数据表,你会看到这条学生信息被删除了。

sql-sc2.png

再次强调:删除数据是一项敏感操作,因为它是不可逆的,并且容易出错。建议在执行删除操作时格外谨慎,确保你真正打算删除的是正确的数据。尤其是在生产环境中,误删数据可能会导致严重的后果;在使用 SQL 删除语句时,如果省略WHERE子句,DELETE语句将删除表中的所有行。因此,除非你确实想删除所有行,否则应该始终使用WHERE子句。

4.删除数据表和数据库

使用Navicat删除数据表和数据库

  1. 选中你要删除的数据表或者数据库,点击右键并选择"删除表"或者"删除数据库"。

scsjb1.png

scsjk1.png

  1. 点击后,会有弹窗提示:你确定要删除"XXX"吗?,注意:这里需要先勾选"我了解此操作是永久性的且无法撤消",才能进行删除的操作。因为删除数据表或者数据库是一个敏感的操作,数据一旦删除就无法找回,所以务必谨慎使用。

scsjb2.png

scsjk2.png

读菜鸟教程,使用DROP语句删除数据表和数据库

在 SQL 语句中,我们使用 DROP 语句用于删除数据表和数据库。以下是 DROP 语句的基本语法:

  • DROP TABLE 语句用于删除表
  1. DROP TABLE table_name
  • DROP DATABASE 语句用于删除数据库
  1. DATABASE database_name

接下来,可以先在你的数据库理创建一个新的数据库,和一个新的数据表。然后通过阅读菜鸟教程:SQL DROP,来尝试删除数据表和数据库的操作。