01_02_mysql03_DML

插入数据

方式1:VALUES的方式添加

  • 为表的所有字段按默认顺序插入数据
    INSERT INTO 表名
    VALUES (value1,value2,....);
    

值列表中需要为表的每一个字段指定值,并且值的顺序必须和数据表中字段定义时的顺序相同。

  • 为表的指定字段插入数据
    INSERT INTO 表名(column1 [, column2,, columnn])
    VALUES (value1 [,value2,, valuen]);
    

为表的指定字段插入数据,就是在INSERT语句中只向部分字段中插入值,而其他字段的值为表定义时的默认值。
在 INSERT 子句中随意列出列名,但是一旦列出,VALUES中要插入的value1,…valuen需要与column1,…columnn列一一对应。如果类型不同,将无法插入,并且MySQL会产生错误。

  • 同时插入多条记录
    INSERT INTO table_name
    VALUES
    (value1 [,value2,, valuen]),
    (value1 [,value2,, valuen]),
    ……
    (value1 [,value2,, valuen]);
    
    INSERT INTO table_name(column1 [, column2,, columnn])
    VALUES
    (value1 [,value2,, valuen]),
    (value1 [,value2,, valuen]),
    ……
    (value1 [,value2,, valuen]);
    

方式2:将查询结果插入到表中

INSERT还可以将SELECT语句查询的结果插入到表中,此时不需要把每一条记录的值一个一个输入,只需要使用一条INSERT语句和一条SELECT语句组成的组合语句即可快速地从一个或多个表中向一个表中插入多行。

INSERT INTO 目标表名
(tar_column1 [, tar_column2,, tar_columnn])
SELECT
(src_column1 [, src_column2,, src_columnn])
FROM 源表名
[WHERE condition]
  • 在 INSERT 语句中加入子查询。
  • 不必书写 VALUES 子句。
  • 子查询中的值列表应与 INSERT 子句中的列名对应。

更新数据

UPDATE table_name
SET column1=value1, column2=value2,, column=valuen
[WHERE condition]

删除数据

DELETE FROM table_name [WHERE <condition>];

你可能感兴趣的:(Java再记录,mysql)