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是用于对一个或多个表单独行的操作。
微信搜索公众号【深圳家】或者直接搜索【i-shenzhen】,获取更多信息 |