数据库(DML)

数据库

DML

一、增加数据

1.1 增加一条数据

1.1.1 全列插入
insert into 表名 values(每一列的值按照顺序插入)

INSERT INTO employees VALUES('张三',13111111111,123,18);
1.1.2 缺省插入
insert into 表名(字段1,字段2...)

INSERT INTO employees (sname,phone,age,salary) VALUES ('张三'13111111111,20,55);

注意点:
1、字段的书写顺序由自己定,可以不按照数据库表设计的顺序
2、插入的值与字段的顺序一一对应
1.1.3 set的使用
/*
insert into 表名 set 字段1=值,字段2=值,...;
*/

INSERT INTO employees SET sname = '王二',salary=100,age=28,phone=16546186;
1.1.4 value/values和set之间的对比

第一种方式支持多行插入,set不支持多行插入
第一种方式支持子查询,set不支持子查询

1.2 增加多条数据

1.2.1 全列插入多条数据
全列插入多条数据插入
insert into 表名 values (字段1,字段2...),(值1,值2...;

注意点:
多条数据之间以','隔开
1.2.2 缺省插入多条数据
缺省插入的多条插入
insert into 表名(字段1,字段2,...)values(值1,值2...),(值1,值2...;

INSERT INTO employees (sname,phone,age,salary)VALUES('张一',13211444411,53,19),('张二',13211334411,135,12);

注意点:
mysql中value和values的区别:
1、当插入一条数据的时候,我们使用的是values速度较快
2、当插入多条数据的时候,使用value速度较快

1.3 插入数据的注意点

1.3.1 空值的处理
INSERT INTO employees SET sname = '王x',age=28,phone=16546186;

INSERT INTO employees SET sname = '王x',salary=NULL,age=28,phone=16546186;

注意点:
1、对于空值,可以将字段直接不写入
2、写入字段,但是值用NULL进行填充
1.3.2 利用子查询的结果
-- 利用子查询
INSERT INTO brand(NAME)(SELECT 'gucci');
1.3.3 主键自增

1、可以不写,因为设置了自增

2、如果要写,可以用0填充

二、修改数据

# 更新数据,将名字改成卫龙
UPDATE brand SET NAME='卫龙' WHERE id=3;


# 将`employees`表中年龄大于18的且姓王的人的薪资改成5858
-- 找出数据库中姓王的
SELECT * FROM employees WHERE sname LIKE '王%'AND age>18;
UPDATE employees SET salary='5858'  WHERE  sname LIKE '王%'AND age>18;
SELECT * FROM employees;

# 找出名字中带王的人,将salary修改成null
SELECT *FROM employees WHERE sname LIKE '%王%';

UPDATE employees SET salary=NULL WHERE sname LIKE '%王%';

/*
更新数据
update 数据库表名 set 字段名1=1,字段名2=2...where 条件判断...
如果有条件筛选,就将符合条件筛选的数据进行修改
如果没有条件筛选,所有的数据进行修改
*/

三、删除数据

# 将重复数据的内容删除
DELETE FROM brand WHERE id = 7;

-- 删除之后,主键不会上升一位
-- 但是一般情况下,不会直接进行删除操作,会进行逻辑删除

3.1 删除符合条件的数据

/*
删除一些符合条件的数据
delete from 表名 where 条件判断
*/

3.2 清空表数据

-- 将stud这张表的数据进行清空

TRUNCATE stud;
SELECT * FROM stud;
/*
清空表的数据
truncate 表名
*/

/*
删除表
drop table 表名
*/

注意点:
1、只是清空表数据,不会影响表结构
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值