如何在mysql中插入数据_mysql插入数据SQL用法

7次阅读

mysql插入数据最常用INSERT INTO语句,需明确表名、字段和值;推荐显式指定字段名,支持单行/多行插入及INSERT…select跨表复制。

如何在mysql中插入数据_mysql插入数据SQL用法

在 MySQL 中插入数据,最常用的是 INSERT INTO 语句,核心在于明确目标表、字段和对应值。只要表结构清楚、数据类型匹配,操作就很直接。

基础插入:指定字段和值

推荐始终显式写出字段名,避免因表结构变动或字段顺序变化导致错误。

  • 语法:INSERT INTO 表名 (字段1, 字段2, …) VALUES (值1, 值2, …);
  • 字符串要用单引号(如 '张三'),数字可不加引号(如 25),NULL 直接写 NULL(不加引号)
  • 示例:INSERT INTO users (name, age, email) VALUES ('李四', 30, 'lisi@example.com');

省略字段名的插入(需谨慎)

只在你完全确认字段顺序且所有非空字段都有值时才用,否则容易出错。

  • 语法:INSERT INTO 表名 VALUES (值1, 值2, …);
  • 值的顺序必须严格对应表中字段的定义顺序(可通过 DESCRIBE 表名; 查看)
  • 如果某字段允许 NULL 或有默认值(如 created_at timestamp default CURRENT_TIMESTAMP),可跳过,但必须确保前面字段数量与值数量一致

一次插入多条记录

用一条语句插入多行,提升效率,尤其适合批量导入。

  • 语法:INSERT INTO 表名 (字段1, 字段2) VALUES (值1, 值2), (值3, 值4), (值5, 值6);
  • 每组值用圆括号包裹,之间用英文逗号分隔
  • 所有行的字段数量和类型必须一致

从其他表复制数据(INSERT … SELECT)

适合迁移、备份或根据条件生成新数据。

  • 语法:INSERT INTO 表名 (字段1, 字段2) SELECT 字段A, 字段B FROM 其他表 WHERE 条件;
  • SELECT 返回的列数和类型需与 INSERT 指定的字段匹配
  • 支持 JOIN、聚合函数等复杂查询,但要注意性能和锁表现
text=ZqhQzanResources