入门MySQL——DML语句篇


前言:在上篇文章中,主要为大家介绍的是DDL语句的用法,可能细心的同学已经发现了。本篇文章将主要聚焦于DML语句,为大家讲解表数据相关操作。这里说明下DDL与DML语句的分类,可能有的同学还不太清楚。
DDL(Data Definition Language):数据定义语言,用于创建、删除、修改、库或表结构,对数据库或表的结构操作。常见的有create,alter,drop等。
DML(Data Manipulation Language):数据操纵语言,主要对表记录进行更新(增、删、改)。常见的有insert,update,delete等。插入数据主要用到的是insert语法,官方文档同样给出很多选项:有兴趣的同学可以咨询研究下上面的各个选项哦,下面我将分类给大家介绍几个常用的语法。INSERT INTO … VALUES (…)这可能是你写insert语句最常用的一种,标准用法为:语法说明如下:INSERT … SET …insert … set语句一次只能插入一条数据,可以向表中插入部分列的值,这种方式更为灵活。INSERT INTO … SELECT …INSERT INTO…SELECT…FROM 语句用于快速地从一个或多个表中取出数据,并将这些数据作为行数据插入另一个表中。SELECT 子句返回的是一个查询到的结果集,INSERT 语句将这个结果集插入指定表中,结果集中的每行数据的字段数、字段的数据类型都必须与被操作的表完全一致。举个例子,假如test表和test_bak表结构完全开发云主机域名一致,我们想把test表中的数据插入到test_bak表中,那么我们可以这么操作:INSERT … ON DUPLICATE KEY UPDATE如果要插入的新行违反主键(PRIMARY KEY)或UNIQUE约束,则MySQL会报错,此语法就是为了解决此错误。当数据库中存在某个记录时,执行这条语句会更新它,而不存在这条记录时,会插入它。下面举个例子为大家演示下效果:REPLACE INTO … VALUES …replace into 跟 insert 功能类似,不同点在于:replace into 首先尝试插入数据到表中, 1. 如果发现表中已经有此行数据(根据主键或者唯一索引判断)则先删除此行数据,然后插入新的数据。 2. 否则,直接插入新数据。同样举个例子说明下:update语句用于更新表数据,官方推荐语法为:同样的,这里只给大家介绍常用的单表更新语法:语法说明如下:delete语句用于删除表数据,官方文档推荐语法:使用 DELETE 语句从单个表中删除数据,语法格式为:语法说明如下:总结:本文主要介绍了三种DML语句的语法,看似简单,其实其中各种选项还是很复杂的,特别是insert语句,经常用到的选项就有很多。在这里也要提醒大家,执行update或delete语句时一定要小心,不使用where条件会更新或删除全部数据哦。

相关推荐: Percona-XtraDB-Cluster的编译安装

环境:操作系统centos7.4,mysql 安装在/data/mysql下,mysql属于mysql用户,pxc-5.7.191.1 下载pxc-5.7.19mkdir -p /home/sunx/tools wget -P /home/sunx/tools…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 06/04 18:42
下一篇 06/04 18:42

相关推荐