前言:
目前同学们对“mysql ddl dml dcl”大概比较讲究,我们都需要剖析一些“mysql ddl dml dcl”的相关知识。那么小编在网上网罗了一些有关“mysql ddl dml dcl””的相关知识,希望姐妹们能喜欢,我们快快来学习一下吧!SQL(Structure Query Language)结构化查询语言是数据库的核心语言,是ANSI标准的计算机语言,ANSI(美国国家标准化组织),SQL相当于一种标准(可理解为语法),SQL语言有许多不同的版本,不同版本用于不同的数据库,不同的数据库对应不同的数据库管理系统,如MySQl,SQL Server、Access、Oracle、Sybase、DB2等等。不同版本的SQL语言为了符合ANSI标准,在主要命令上大体一致,如:SELECT、UPDATE、DELETE、INSERT、WHERE 等等,不区分大小写,运算符的作用(但运算符的使用格式有所区别)。也有不同点,如:各自的数据类型,安全管理,性能调配,专属于各自的扩展。
使用不同的关系型数据库管理系统创建数据库时,能对比出各自关系型数据库的特征,比如:数据库文件结构(数据库在计算机中真实的存在形式是以文件形式存在)
两者关系:SQL基于关系型数据库与关系型数据库管理系统运行。
基于SQL的DBMS产品可以运行在从个人机、工作站到基于局域网、小型机和大型机的各种计算机系统上,具有良好的可移植性。
在MySQL中,SQL通常分为DDL、DML和查询,还包括一些其它语句类别。MySQL将SELECT与INSERT、UPDATE、DELETE分别划分到了查询和DML,但是也并非绝对的划分,通常会将SELECT与INSERT、UPDATE、DELETE一起划分为DML。
在SQL Server中,主要分为DDL、DML和DCL三种。DDL包括CREATE、ALTER和DROP,DML包括SELECT、INSERT、UPDATE和DELETE,DCL包括GRANT、DENY、REVOKE。
一、 DQL
DQL (Data Query Language)数据查询语言:
数据检索语句,用于从表中获取数据。通常最常用的为保留字SELECT,并且常与FROM子句、WHERE子句组成查询SQL查询语句。
语法:
SELECT `字段名称` FROM `表名称`
二、DML
DML(data manipulation language)数据操纵语言:
DML就是我们最经常用到的 UPDATE、INSERT、DELETE。 主要用来对数据库的数据进行一系列操作。
语法:
UPDATE `表名称` SET `字段名称` = ‘新值’ WHERE `字段名称` = ‘某值’
INSERT INTO `表名称` (`字段1`, `字段2`,...) VALUES (‘值1’, ‘值2’,....)
DELETE FROM `表名称` WHERE `字段名称` = ‘值’
三、DPL
DPL(Data Processing Language)事务处理语言:
事务处理语句能确保被DML语句影响的表的所有行及时得以更新。TPL语句包括BEGIN TRANSACTION、COMMIT和ROLLBACK。
四、DDL
DDL(data definition language)数据库定义语言:
其实就是我们在创建表的时候用到的一些SQL语句,比如说:CREATE、ALTER、DROP等。DDL主要是用在定义或改变表的结构,数据类型,表之间的链接和约束等初始化工作上使用。
语法:
CREATE TABLE `表名称`
(
`字段名称1` 数据类型,
`字段名称2` 数据类型,
`字段名称3` 数据类型,
....
)
ALTER TABLE `表名称`
ALTER COLUMN `字段名称` 数据类型
DROP TABLE `表名称`
DROP DATABASE `数据库名称`
五、DCL
DCL(Data Control Language)数据库控制语言:
是用来设置或更改数据库用户或角色权限的语句,包括(GRAND ,REVOKE等)语句。
Example1:
创建本地新用户james,并设定其密码为mypassword。
CREATE USER 'james'@'localhost' IDENTIFIED BY 'mypassword';
Example2:
授予远程用户harden访问所有数据库中的所有表的所有权限,即全局权限。
GRAND ALL ON *.* TO 'harden'@'%';
六、CCL CCL(Cursor Control Language)指针控制语言(CCL)
如DECLARE CURSOR、FETCH INTO和UPDATE WHERE CURRENT是用于对一个或多个表单独行的操作。