mysql中insert into的用法

在MySQL中,INSERT INTO语句用于向数据库表中插入新的行。以下是INSERT INTO语句的基本用法和一些示例。

基本语法

INSERT INTO table_name (column1, column2, column3, ..., columnN)
VALUES (value1, value2, value3, ..., valueN);

插入单行数据

假设有一个名为employees的表,其结构如下:

  • id (INT)
  • first_name (VARCHAR)
  • last_name (VARCHAR)
  • age (INT)
  • salary (DECIMAL)
    以下是如何向该表插入单行数据的示例:
INSERT INTO employees (id, first_name, last_name, age, salary)
VALUES (1, 'John', 'Doe', 30, 50000.00);

插入多行数据

你可以一次性插入多行数据,如下所示:

INSERT INTO employees (id, first_name, last_name, age, salary)
VALUES (1, 'John', 'Doe', 30, 50000.00),
       (2, 'Jane', 'Smith', 25, 60000.00),
       (3, 'Alice', 'Johnson', 35, 70000.00);

插入部分列的数据

如果你只想要插入部分列的数据,只需要指定那些列的名称即可:

INSERT INTO employees (first_name, last_name)
VALUES ('John', 'Doe');

在这个例子中,id, age, 和 salary 列将不会被插入数据,如果这些列允许NULL值,它们将被设置为NULL。如果这些列不允许NULL值并且没有设置默认值,那么这条语句将会失败。

插入默认值

如果表中的列有默认值,你可以在INSERT语句中省略这些列,MySQL将自动填充默认值:

INSERT INTO employees (id, first_name, last_name)
VALUES (1, 'John', 'Doe');

假设agesalary列有默认值,那么这两个列将会被设置为它们的默认值。

注意事项

  • 确保插入的数据类型与表定义中的列类型相匹配。
  • 如果列不允许NULL值,且没有默认值,则必须在INSERT语句中为这些列提供值。
  • 如果表中有自增主键,你可以在INSERT语句中省略该列,MySQL将自动为该列生成下一个序列值。
    这些是INSERT INTO语句的基本用法。根据具体的需求,INSERT语句可以更加复杂,例如使用子查询来插入数据。

你可能感兴趣的:(mysql学习笔记,mysql,数据库)