DML语言-插入语句

DML语言

/*
数据操作语言
插入:insert
修改:update
删除:delete
*/

一 插入语句

/*
方式一:
语法:
insert into 表名(列名,...)
values (值1,...);

方式二:
/*
语法:
insert into 表名
set 列名=值,列名=值,...
*/
*/

方式一:

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

INSERT INTO beauty(id,name,sex,borndate,phone,photo,boyfriend_id)
VALUES(13,'唐艺昕','女','1990-4-23','13899999999',NULL,2);

2.不可以为null的值,必须插入值。可以为null的列如何插入值?

-- 方式一:值写null
INSERT INTO beauty(id,name,sex,borndate,phone,photo,boyfriend_id)
VALUES(13,'唐艺昕','女','1990-4-23','13899999999',NULL,2);
-- 方式二:列和值都可以不写
INSERT INTO beauty(id,name,sex,borndate,phone,boyfriend_id)
VALUES(14,'金星','女','1990-4-23','13899999999',2);

3.列的顺序可以调换

INSERT INTO beauty(name,id,phone,sex)
VALUES("大佬",15,'1342121122','女');

4.列和值的个数必须一致。

-- ⚠️ 下面这个错误错,列4个,值3个。
INSERT INTO beauty(name,id,phone,sex)
VALUES("小佬",17,'1342121122');

5.可以省略列名,默认所有列,而且列的顺序和表的顺序一致.值都不能省略。

INSERT INTO beauty
VALUES(18,'唐222','女','1990-4-23','110',NULL,2);

方式二:

/*
语法:
insert into 表名
set 列名=值,列名=值,...
*/

INSERT INTO beauty
SET id=19,name='刘涛',phone='112',sex='女';

两种方式大pk

-- 1.方式一支持插入多行,用逗号隔开。方式二不支持
INSERT INTO beauty
VALUES (23,'wu1','女','1990-4-23','110',NULL,2)
,(24,'wu2','女','1990-4-23','110',NULL,2)
,(25,'wu3','女','1990-4-23','110',NULL,2);

-- 2.方式一支持子查询,方式二不支持
INSERT INTO beauty(id,name,phone)
SELECT 13,'宋茜','111'; -- 查询的常量。

INSERT INTO beauty(id,name,phone)
SELECT id,boyName,'109'
FROM boys WHERE id<3;

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。