MySQL插入数据

来源: 2024-07-06 00:07:18 播报

如果插入的数据是字符型,必须使用单引号或者双引号,如:"value"。

mysql插入数据有以下几种方式:

一、简写方式

这种方式虽然非常简单,但是VALUES后面的值必须和表中的类顺序对应,且类型要保持一直,即使表中某一个列不需要值也必须赋值为null,比如我们的主键id设置的是递增实际上是不用设置值的,但是使用这种方式必须赋值为null

不推荐的原因:在实际开发中如果使用此方法进行插入数据,后面表进行了改动(比如字段顺序改变了)那么整个语句都将报错,扩展性及其差,且维护起来比较困难。

格式:

INSERT INTO 表名 VALUES(值1,值2);

二、常用方式

格式:

INSERT INTO 表名(字段1,字段2) VALUES(值1,值2);

三、REPLACE INSERT语句

此语句的作用是当我们在插入一条数据时,如果此条已经存在,那么先删除原来存在的数据再添加插入的数据,如果不存在那么直接插入新的数据。注意:却分是否存在是通过主键来确定的。

格式:

REPLACE INTO 表名(字段1,字段2) VALUES(值1,值2);

四、INSERT IGNORE INTO 语句

作用是如果插入的数据已经存在那么就忽略插入的数据(也就是不改变原来的数据),如果不存在则插入新的数据。注意:却分是否存在是通过主键来确定的。

格式:

INSERT IGNORE INTO 表名(字段1,字段2) VALUES(值1,值2);

五、批量插入

格式:

INSERT INTO 表名(字段1,字段2,字段3) VALUES(值1,值2,值3);INSERT INTO 表名(字段1,字段2,字段3) VALUES(值1,值2,值3);

六、INSERT SELECT 语句

此语句的作用是将SELECT语句的结果插入表中,可实现数据迁移。

格式:

IGNORE INTO 插入的表名(字段1,字段2,字段3) SELECT 被查询的字段1,被查询的字段2 from 被查询的表名;