首页 / MYSQL / 八、mysql DML语言
八、mysql DML语言
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了八、mysql DML语言,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3165字,纯文字阅读大概需要5分钟。
内容图文
![八、mysql DML语言](/upload/InfoBanner/zyjiaocheng/875/27928e5343554153a308d48f0eb01e6d.jpg)
参考url:https://www.bilibili.com/video/BV12b411K7Zu
数据操作语言:
插入:insert
修改:update
删除:delete
1、插入语句(方式一)
语法:
Insert into 表名(列名,...) Values(值1,...);
1) 插入的值的类型要与列的类型一致或兼容
INSERT INOT
Beauty(id,name,sex,borndate,phone,photo,boybriend_id)
VALUES(13,’唐宜兴’,‘女’,‘1996-2-3’,’1999999’,NULL,2);
2) 不可以为null的列必须插入值,可以为null的列如何插入值?
方式一:
INSERT INOT
Beauty(id,name,sex,borndate,phone,photo,boybriend_id)
VALUES(13,’唐宜兴’,‘女’,‘1996-2-3’,’1999999’,NULL,2);
方式二:
INSERT INOT
Beauty(id,name,sex,borndate,boybriend_id)
VALUES(13,’唐宜兴’,‘女’,‘1996-2-3’,2);
3) 列的顺序可以调换
INSERT INTO
beauty(name,sex,id,phone)
VALUES(‘将星’,‘女’,16,’11000002’)
4) 列数和值的个数必须一致
5) 可以省略列名,默认为所有列,而且列的顺序和表中列的顺序一致
2、插入语句(方式二)
语法:
Insert into 表名
Set 列名=值,列名=值,...
例子:
INSERT INTO beauty
SET id=19,name=’刘涛’,phone=’999’
3、插入方式比较
1) 方式一支持插入多行,方式二不支持
INSERT INTO
beauty(name,sex,id,phone)
VALUES(‘将星1’,‘女’,16,’11000002’),
VALUES(‘将星2’,‘女’,16,’11000002’),
VALUES(‘将星3’,‘女’,16,’11000002’);
2) 方式一支持子查询,方式二不支持
INSERT INTO beauty(id,name,phone)
SELECT 26,‘宋强’,’112134’
4、修改语句
1) 修改单表的记录
语法:
Update 表名
Set 列=新值,列=新值,...
Where 筛选条件;
案例1:修改beauty表中姓唐的女孩的电话为123456789
UPDATE beauty
SET phone=’123456789’
WHERE name LIKE ‘唐%’;
案例2:修改boys表中id号为2的名称为张飞,魅力值为10
UPDATE boys
SET name=’张飞’,usercp=10
WHERE id=2;
2) 修改多表的记录
语法:
SQL92语法
Update 表1 别名,表2 别名
Set 列=值,...
WHERE 连接条件
AND 筛选条件;
SQL99语法
UPDATE 表1 别名
INNER|LEFT|RIGHT JOIN 表2 别名
ON 连接条件
SET 列=值,...
WHERE 筛选条件;
案例1:修改张无忌的女朋友的手机号为114
UPDATE boys AS bo
INNER JOIN beauty AS b
ON bo.id=b.boyfirend_id
WHERE bo.boyname=’张无忌’;
案例2:修改没有男朋友的女孩的男朋友编号都为2号
UPDATE boys AS bo
RIGHT JOIN beauty AS b
ON bo.id=b.boyfriend_Id
SET b.boyfriend_id=2
WHERE b.id IS NULL;
5、删除语句
1) 方式一:delete(删除单行)
语法:
i) 单表的删除
Delete from 表名 where 筛选条件;
案例1:删除手机号以9结尾的女生信息
DELETE FROM beauty WHERE phone LIKE ‘%9’;
ii) 多表的删除
语法:
Sql92语法:
Delete 表1的别名,表2的别名
FROM 表1 别名,表2 别名
WHERE 连接条件
AND 筛选条件;
Sql99语法:
Delete 表1的别名,表2的别名
From 表1 别名
INNER|LEFT|RIGHT JOIN 表2 别名
ON 连接条件
WHERE 筛选条件
案例1:删除张无忌女朋友的信息
DELETE b
FROM beauty b
INNER JOIN boys bo
ON b.boyfriend_id=bo.id
WHERE bo.boyname=’张无忌’;
案例2:删除黄小名的信息以及他女朋友的信息
DELETE b,bo
FROM beauty b
INNNER JOIN boys bo
ON b.boyfriend_id=bo.id
WHERE bo.boyname=’黄小名’;
2) 方式二:truncate(删除表中所有数据)
语法:
Truncate table 表名;
案例:将魅力值>100的男神信息删除
TRUNCATE TABLE boys;
3) Delete和truncate对比分类:
i. Delete可以加where条件,truncate不能加
ii. Truncate删除效率高一些
iii. 假如要删除的表中有自增长列,如果用delete删除后,再插入数据,自增长列的值从断点开始,而truncate删除后,再插入数据,自增长列的值从1开始。
iv. Truncate删除没有返回值,delete删除有返回值。
v. Truncate删除不能回滚,delete删除可以回滚
内容总结
以上是互联网集市为您收集整理的八、mysql DML语言全部内容,希望文章能够帮你解决八、mysql DML语言所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。