首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
5.1 MySQL存储引擎
5.1.1 MySQL存储引擎的概念
5.1.2 查询MySQL中支持的存储引擎
5.1.3 InnoDB存储引擎
5.1.4 MyISAM存储引擎
5.1.5 MEMORY存储引擎
5.1.6 选择存储引擎
5.1.7 设置数据表的存储引擎
5.2 MySQL数据类型
5.2.1 数字类型
5.2.2 字符串类型
5.2.3 日期和时间类型
6.1 创建数据表(CREATE TABLE语句)
6.2 查看表结构
6.2.1 使用SHOW COLUMNS语句查看
6.2.2 使用DESCRIBE语句查看
6.3 修改表结构(ALTER TABLE语句)
6.3.1 添加新字段和修改字段定义
6.3.2 修改字段名/类型
6.3.3 删除字段
6.3.4 修改表名
6.4 重命名表(RENAME TABLE语句)
6.5 复制表(CREATE TABLE…LIKE语句)
6.6 删除表(DROP TABLE语句)
7.1 运算符
7.1.1 算术运算符
7.1.2 比较运算符
7.1.3 逻辑运算符
7.1.4 位运算符
7.2 流程控制语句
7.2.1 IF语句
7.2.2 CASE语句
7.2.3 WHILE循环语句
7.2.4 LOOP循环语句
7.2.5 REPEAT循环语句
8.1 增添数据
8.1.1 使用INSERT…VALUES语句插入数据
8.1.2 使用INSERT…SET语句插入数据
8.1.3 使用INSERT...SELECT语句插入查询结果
8.2 修改数据
8.3 删除数据
8.3.1 使用DELETE语句删除数据
8.3.2 使用TRUNCATE TABLE语句删除数据
当前位置:
首页>>
技术小册>>
MySQL从入门到精通(二)
小册名称:MySQL从入门到精通(二)
### 8.1 增添数据 在MySQL数据库中,数据的增添是数据库操作中最基础也是最重要的一环。无论是管理用户信息、存储产品数据,还是记录交易详情,都离不开向数据库中添加新数据。本章将详细介绍如何在MySQL中通过不同的方式增添数据,包括使用INSERT语句、批量插入、以及通过应用程序接口(API)或图形用户界面(GUI)工具进行数据的增添。 #### 8.1.1 使用INSERT语句增添数据 `INSERT`语句是MySQL中用于向表中添加新行的基本命令。其基本语法如下: ```sql INSERT INTO 表名 (列1, 列2, 列3, ..., 列N) VALUES (值1, 值2, 值3, ..., 值N); ``` - **表名**:指定要插入数据的表名。 - **列名**(可选):指定要插入数据的列名。如果省略列名,则必须为表中的每一列提供一个值,且顺序必须与表中列的顺序一致。 - **值**:与列名对应的值,用于插入到表中。 ##### 示例 假设有一个名为`students`的表,包含`id`(主键,自增)、`name`(姓名)、`age`(年龄)和`grade`(年级)四个字段。 ```sql INSERT INTO students (name, age, grade) VALUES ('张三', 18, '高三'); ``` 执行上述语句后,`students`表中将新增一行数据,`id`列的值由数据库自动分配(假设`id`列被设置为自增)。 #### 8.1.2 插入多行数据 MySQL允许在单个`INSERT`语句中插入多行数据,这可以显著提高数据插入的效率。语法如下: ```sql INSERT INTO 表名 (列1, 列2, 列3, ..., 列N) VALUES (值1_1, 值1_2, 值1_3, ..., 值1_N), (值2_1, 值2_2, 值2_3, ..., 值2_N), ...; ``` ##### 示例 继续以`students`表为例,一次性插入两行数据: ```sql INSERT INTO students (name, age, grade) VALUES ('李四', 17, '高二'), ('王五', 19, '大一'); ``` #### 8.1.3 使用SELECT语句插入数据 在某些情况下,你可能希望从一个表中选择数据,并将这些数据插入到另一个表中。MySQL允许在`INSERT`语句中使用`SELECT`语句来实现这一功能。 ##### 示例 假设有两个表:`students`(如上所述)和`graduates`(包含`id`、`name`、`graduation_year`字段)。现在,你想将`students`表中所有年级为“大四”的学生信息插入到`graduates`表中,并设置毕业年份为当前年份。 ```sql INSERT INTO graduates (name, graduation_year) SELECT name, YEAR(CURDATE()) FROM students WHERE grade = '大四'; ``` 注意:这里假设`graduates`表的`id`列也是自增的,因此不需要在`INSERT`语句中指定。 #### 8.1.4 注意事项 - **数据类型匹配**:确保插入的值与列的数据类型相匹配,否则会导致错误。 - **主键和唯一约束**:如果表中有主键或唯一约束的列,确保插入的值不会违反这些约束。 - **字符集和排序规则**:对于包含文本数据的列,注意字符集和排序规则的设置,以确保数据的一致性和准确性。 - **性能优化**:对于大量数据的插入,考虑使用批量插入、调整事务隔离级别、关闭自动提交等策略来提高性能。 #### 8.1.5 通过应用程序接口(API)或图形用户界面(GUI)工具增添数据 虽然直接使用SQL语句是增添数据最直接的方式,但在实际应用中,我们往往通过应用程序接口(API)或图形用户界面(GUI)工具来操作数据库。 - **API**:许多现代应用程序都提供了与数据库交互的API,允许开发者通过编程方式向数据库中增添数据。这些API通常封装了底层的数据库操作,使得开发者可以更加专注于业务逻辑的实现。 - **GUI工具**:如phpMyAdmin、MySQL Workbench等,这些工具提供了直观的图形界面,使得数据库管理员和开发者可以方便地通过点击和填写表单的方式来增添数据。这些工具通常也支持SQL语句的编写和执行,为用户提供了灵活的操作方式。 #### 8.1.6 小结 增添数据是MySQL数据库操作中的基础环节,掌握`INSERT`语句及其变体对于进行数据库管理至关重要。通过本章的学习,你应该能够熟练地使用`INSERT`语句向MySQL表中添加单条或多条数据,了解如何通过`SELECT`语句插入数据,以及如何通过API或GUI工具进行数据的增添。同时,你也应该注意到在增添数据时需要注意的一些事项,如数据类型匹配、主键和唯一约束、字符集和排序规则等,以确保数据的准确性和一致性。
上一篇:
7.2.5 REPEAT循环语句
下一篇:
8.1.1 使用INSERT…VALUES语句插入数据
该分类下的相关小册推荐:
MySQL从入门到精通(四)
细说MySQL(零基础到高级应用)
MySQL 实战 45 讲
MySQL从入门到精通(五)
MySQL从入门到精通(三)
MySQL必会核心问题
MySQL从入门到精通(一)
SQL零基础到熟练应用(增删改查)
MySQL8.0入门与实践