结构化查询语言(Structured Query Language)简称SQL
               是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统
 
SQL语言提出  :1974年由Boyce和Chamberlin
主要分为:数据定义、数据操纵和数据控制
优点:
            结构化查询语言是高级的非过程化编程语言,
            允许用户在高层数据结构上工作。
            不要求用户指定对数据的存放方法,了解具体的数据存放方式,
            具有完全不同底层结构的不同数据库系统可以使用相同的结构化查询语言作为数据输入与管理的接口
             可以嵌套,具有极大的灵活性和强大的功能。

简单介绍

详细理解

结构化查询语言主要分为六个部分

1、数据查询语言  DQL (全称:Data Query Language):对数据查询操作
                     语句:称为数据检索语句,用于从表中获取数据,保留字SELECT是DQL(也是所有SQL)用得最多的动词,
                                其他DQL常用的保留字有WHERE(子查询),ORDER BY,GROUP BY(分组)和HAVING
SELECT 列名称 FROM 表名称
SELECT 列名称 FROM 表名称 WHERE 列 运算符 值
SELECT Company, OrderNumber FROM Orders ORDER BY id DESC
2、数据操作语言  DML (全称:Data Manipulation Language):对数据插入、删除和更新三种操作
                     语句:包括动词 INSERT,UPDATE和DELETE,分别用于增加修改和删除
增加
INSERT INTO 表名称 VALUES (值1, 值2,....)
INSERT INTO 表名称 (列1, 列2,...) VALUES (值1, 值2,....)
修改
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
删除
DELETE FROM 表名称 WHERE 列名称 = 值
 
3、数据控制语言  DCL (全称:Data Query Language):对用户访问数据的控制有基本表和视图的授权及回收
                    语句:通过GRANT(授予权限)或REVOKE(收回权限)实现权限控制,确定单个用户和用户组对数据库对象的访问,
                               某些RDBMS可用GRANT或REVOKE控制对表单单个列的访问
4、数据定义语言  DDL (全称:Data Query Language):定义数据库的逻辑结构,包括定义数据库、基本表、视图和索引四个部分
                    语句:包括动词CREATE(创造),ALTER(修改)和DROP(删除)。在数据库中创建新表或修改、删除表(CREAT TABLE 或 DROP TABLE);
                                为表加入索引等
创建库
CREATE DATABASE 数据库名称
创建表
CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)
删除表
DROP TABLE 表名称
5、事务控制语言  TCL (全称:Data Query Language):对事务(transaction)的提交与回滚
                     语句:为了确保被DML语句影响的表可以及时更新,包括COMMIT(提交)命令、SAVEPOINT(保存点)命令ROLLBACK(回滚)命令。
6、指针控制语言  CCL (全称:Data Query Language):规定SQL语句在宿主语言的程序中的使用的规则             
                    语句:像DECLARE CURSOR(声明游标),FETCH INTO(进入)和UPDATE WHERE CURRENT(更新当前位置)用于对一个或多个表单独行的操作
 
快速理解: DQL  和DML 主要是为了完成对表中数据的增删改查,DDL主要是为了完成对表的增删改,DCL为给用户操作数据表和数据的权限,
                  TCL 主要是为了确保在执行增删改的操作的时候及时响应,全部提交或全部回滚, CCL 规定了Sql语句在程序中的使用规则  比如sql 中的游标
 
 

sql 语言--- DML,DDL,DQL,DCL,TCL,CCL的更多相关文章

  1. SQL语言分类DDL、DML、DQL、TCL、DCL

    关系型数据库的SQL语句都可以分为4大类: 1. DDL(数据定义语言)     DDL 主要是指如下的四种SQL 语句,以 CREATE.DROP.ALRET开头和 TRUNCATE TABLE 语 ...

  2. SQL语言:DDL,DML,DCL,DQL,TCL

    DDL(Data Definition Language)数据库定义语言 statements are used to define the database structure or schema. ...

  3. SQL语言:DDL/DML/DQL/DCL

    SQL (Structure Query Language)语言是数据库的核心语言. SQL 的发展是从1974年开始的,其发展过程如下: 1974年-----由Boyce和Chamberlin提出, ...

  4. SQL语句 DML,DDL,DCL

    数据控制语言(DCL)是用来设置或者更改数据库用户或角色权限的语句,这些语句包括GRANT.DENY.REVOKE等语句,在默认状态下,只有 sysadmin.dbcreator.db_owner或d ...

  5. SQL语句 DML,DDL,DCL(转载)

    数据控制语言(DCL)是用来设置或者更改数据库用户或角色权限的语句,这些语句包括GRANT.DENY.REVOKE等语句,在默认状态下,只有 sysadmin.dbcreator.db_owner或d ...

  6. MySQL数据库 crud语句 ifnull() 创建新账户 备份数据库 一对多关系 多对多(中间表) 外键约束 自关联 子查询注意事项 DML DDL DQL mysql面试题 truncate与delete的区别

    DML(data manipulation language): 它们是SELECT.UPDATE.INSERT.DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言 DDL ...

  7. Sql语言学习——DDl

    DDL:操作数据库.表 1. 操作数据库:CRUD 1. C(Create):创建 * 创建数据库: * create database 数据库名称; * 创建数据库,判断不存在,再创建: * cre ...

  8. SQL语言基础-基本概念

    SQL:IBM的圣约瑟(SanJose),SEQUEL 2(也就是现在的SQL语言) 1979.Oracle首先提出提供了商用的SQL语言 1986.10美国ANSI采用SQL作为关系数据库管理系统的 ...

  9. 第一讲:SQL语言概述

    SQL语言是集DDL.DML和DCL于一体的数据库语言. SQL语言之DDL:定义数据库 SQL语言之DML:操纵数据库 一.功能概述 SQL语言主要由以下9个单词引导的操作语句来构成,但每一条语句都 ...

随机推荐

  1. Django2.0版本以上与pymsql 不匹配问题以及解决方法

    Django2.0版本以上与pymsql 不匹配问题以及解决方法 Django 2.0 以上 如果使用pymysql0.93,需要一下两步操作: # 1 第一次报错信息: File "D:\ ...

  2. JDK10、JDK11、JDK12新特性

    JDK10新特性 1.var声明变量 很多人抱怨Java是一种强类型,需要引入大量的样板代码.甚至在这些情况下,给定好变量名,通常很清楚发生了什么,明显类型声明往往被认为是不必要的.许多流行的编程语言 ...

  3. 微信小程序页面调用自定义组件内的事件

    微信小程序页面调用自定义组件内的事件 page page.json { "usingComponents": { "my-component": ". ...

  4. Unity3D协程(转)

    这篇文章转自:http://blog.csdn.net/huang9012/article/details/38492937 协程介绍 在Unity中,协程(Coroutines)的形式是我最喜欢的功 ...

  5. c# datagridview导出Excel文件 问题

    今天vs2010c#开发做datagridview导出Excel文件时,发现一个问题,和大家探讨一下: 第一种方式:写流的方式 private void button_Excel_Click(obje ...

  6. 个人项目-WC(Java实现)

    一.Github项目地址: https://github.com/kestrelcjx/-WC-Java- 二.PSP表格 PSP2.1 Personal Software Process Stage ...

  7. 编写合格的C代码(1):通过编译选项将特定警告视为错误

    目录 快速设定 向错误的执念开炮,向C编译器开炮 编译警告应当被忽略吗?warning不重要吗? 个人总结的应当视作error的warning 1. 函数没有声明就使用 2. 函数虽然有声明,但是声明 ...

  8. Django框架(四)-- 路由控制:有名/无名分组、反向解析、路由分发、名称空间、伪静态、APPEND_SLASH、不同版本的Django区别、Django虚拟环境搭建

    路由控制 一.简单路由配置 url(r'^booklist$', views.booklist) 第一个参数是正则表达式,第二个参数是视图函数 每个正则表达式前面的'r' 是可选的但是建议加上.它告诉 ...

  9. django迁移脚本

    执行migrate报错的解决办法: 想知道migrate为什么报错,需要先了解migrate到底做了什么事情 migrate做了什么事情? 1.将相关的迁移脚本翻译成sql语句,然后在数据库中执行 2 ...

  10. Flask中before_request与after_request使用

    目录 1.前提,装饰器的弊端 2.before_request与after_request 2.1 before_request分析: 2.2 after_request分析: 3.before_re ...