MySQL-DML——插入语句

DML:数据操控语言

包含:数据插入(insert)、修改(update)、删除(delete)

一、插入语句方式一

语法:

insert into 表名(列名1,……)

values(值1,……);

1、插入的值的类型要与列的类型一致或兼容

INSERT INTO beauty(id,NAME,sex,borndate,phone,photo,boyfriend_id)
VALUES(13,'唐一','女','1990-4-23','18988889999',NULL,2);

2、不可以为NULL的列必须插入值,可以为NULL的列如何插入值

#方式1

INSERT INTO beauty(id,NAME,sex,borndate,phone,photo,boyfriend_id)
VALUES(13,'唐一','女','1990-4-23','18988889999',NULL,2);

#方式2

INSERT INTO beauty(id,NAME,sex,borndate,phone,boyfriend_id)
VALUES(13,'唐一','女','1990-4-23','18988889999',2);

3、列的顺序可以调换

INSERT INTO beauty(NAME,id,sex,borndate,phone,boyfriend_id)
VALUES('李四',15,'女','1991-4-21','18388886799',3);

4、列数和值的个数必须一致

否则会出现错误:Column count doesn't match value count at row 1

5、可以省略列名,默认为所有列,且列的顺序与原表中的顺序一致


 

二、插入语句方式二

语法:

insert into 表名

set 列名1=值1,列名2=值2,……

1、插入的值的类型要与列的类型一致或兼容

insert into beauty
set id=16,name='王五',sex='女'
 



#两种插入方式比较

1、方式一支持插入多行,方式二不支持

INSERT INTO beauty(id,NAME,sex,borndate,phone,photo,boyfriend_id)
VALUES(13,'唐一','女','1990-4-23','18988889999',NULL,2)
,(14,'张三','女','1992-4-23',NULL,NULL,3)
,(15,'李四','女','1991-4-21','18388886799',NULL,NULL);

2、方式一支持子查询,方式二不支持

INSERT INTO boys(id,boyName)
SELECT id,`name`
FROM beauty WHERE id BETWEEN 6 AND 8;

#将表beauty中id为6-8的行插入到了表boys中

因此使用方式一更多

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值