`

SQL中的DDL、DML、DCL、TCL

 
阅读更多

 1.DDLData Definition Language数据库定义语言statements are used to define the database structure or schema.

DDL是SQL语言的四大功能之一。
用于定义数据库的三级结构,包括外模式、概念模式、内模式及其相互之间的映像,定义数据的完整性、安全控制等约束
DDL不需要commit.
CREATE
ALTER
DROP
TRUNCATE
COMMENT
RENAME

2.DMLData Manipulation Language数据操纵语言statements are used for managing data within schema objects.

由DBMS提供,用于让用户或程序员使用,实现对数据库中数据的操作。
DML分成交互型DML和嵌入型DML两类。
依据语言的级别,DML又可分成过程性DML和非过程性DML两种。
需要commit.
SELECT
INSERT
UPDATE
DELETE
MERGE
CALL
EXPLAIN PLAN
LOCK TABLE

3.DCLData Control Language数据库控制语言  授权,角色控制等
GRANT 授权
REVOKE 取消授权

4.TCLTransaction Control Language事务控制语言
SAVEPOINT 设置保存点
ROLLBACK  回滚
SET TRANSACTION

SQL主要分成四部分
(1)数据定义。(SQL DDL)用于定义SQL模式、基本表、视图和索引的创建和撤消操作。
(2)数据操纵。(SQL DML)数据操纵分成数据查询和数据更新两类。数据更新又分成插入、删除、和修改三种操作。
(3)数据控制。包括对基本表和视图的授权,完整性规则的描述,事务控制等内容。
(4)嵌入式SQL的使用规定。涉及到SQL语句嵌入在宿主语言程序中使用的规则。

 

扩展DDL:

DDL—数据库定义语言:直接提交的。
CREATE:用于创建数据库对象。
DECLARE:除了是创建只在过程中使用的临时表外,DECLARE语句和CREATE语句非常相似。唯一可以被声明的对象是表。并且必须放入用户临时表空间。
DROP:可以删除任何用CREATE(数据库对象)和DECLARE(表)创建的对象。
ALTER:允许修改某些数据库对象的信息。不能修改索引。 
下面主要基于对象介绍基本的语法:

1、数据库:

创建数据库:CREATE DATABASE database-name [USING CODESET codeset TERRITORY territory]
注:代码页的问题。
删除数据库:drop database dbname

2、表:

创建新表:
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
根据已有的表创建新表:
A:create table tab_new like tab_old
B:create table tab_new as select col1,col2… from tab_old definition only
修改表:
增加一个列:
Alter table tabname add column col type
注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。添加主键:
Alter table tabname add primary key(col)
删除主键:
Alter table tabname drop primary key(col)
删除表:drop table tabname

3、表空间:

创建表空间:create tablespace tbsname pagesize 4k managed by database using (file ‘file’ size)
表空间加入容器:alter tablespace tablespace_name add(file 'filename' size)
注:该操作是不可逆的,加入容器后将不能将其删除,因此在加入的时候注意。
删除表空间:drop tablespace tbsname

4、索引:

创建索引:create [unique] index idxname on tabname(col….)
删除索引:drop index idxname
注:索引是不可更改的,想更改必须删除重新建。

5、视图:

创建视图:create view viewname as select statement
删除视图:drop view viewname


注:视图唯一能修改的是引用类型列,改变列的范围。其他定义好了都不能修改。当视图基于的基表drop后,视图变为无效。

 

http://www.cnblogs.com/henryhappier/archive/2010/07/05/1771295.html

http://www.cnblogs.com/dataadapter/articles/2934748.html

分享到:
评论

相关推荐

    详解SQL四种语言:DDL DML DCL TCL

    本文详细介绍了sql的四种语言,包括数据定义语言(DDL)、数据操作语言(DML)、数据控制语言(DCL)和事物控制语言(TCL)。在这几种语言中有疑惑的可以来看看这篇文章。

    SQL(结构化查询语言)用于管理关系型数据库的标准语言,主要用于在数据库中查询、插入、更新和修改数据

    - DDL,DML,DCL和TCL命令:DDL是数据定义语言,包括创建(CREATE),删除(DROP),更改(ALTER)等命令。DML是数据操作语言,包括选择(SELECT),插入(INSERT),更新(UPDATE),删除(DELETE)等命令。DCL是...

    SQL基础编写与调试优化

    SQL语句分类(DDL、DML、DQL、DCL) 内容简介 第五部分 SQL优化 优化器 SQL语句执行过程 SQL优化术语 第一部分 SQL基础 SQL简介 发展历史 SQL语句分类 DDL[Data Definition Language] DML[Data Manipulation ...

    ddl数据库资料

    SQL语言包括四种主要程序设计语言类别的语句:数据定义语言(DDL),数据操作语言(DML),数据控制语言(DCL)和事务控制语言(TCL)。 DDL描述的模式,必须由计算机软件进行编译,转换为便于计算机存储、查询和操纵的...

    数据库语法SQL牛哥版.doc

    oracle数据库语法SQL SQL是啥 结构化查询语言(structured query language),使用SQL可以对数据库进行读写操作。 SQL的分类 ...TCL 事务控制语言(transaction control language),commit(提交)、rollback(回滚)

    oracle常用命令-一完整的电子商务网案例

    Oracle常用命令3(DDL、DML、TCL、DCL、序列) Oracle常用命令4(表分区) Oracle常用命令5(同义词、视图、索引) Oracle常用命令6(PL/SQL) Oracle常用命令7(游标) Oracle常用命令8(过程) Oracle常用...

    SQL 中文参考手册(实用版)

    本书详细讲述了: DDL 数据定义语言 DCL 数据控制语言 DML 数据管理语言 TCL 事物控制语言 函数、数据类型、表达式、注册表设置…… 此书是数据库初学者和技术人员必备参考手册,欢迎下载!

    Java面试的10个问题(含参考答案).docx

    什么是DDL、DML、DCL TCL? java中实现多态的机制是什么? SpringMVC与Struts2的主要区别? 谈谈你对spring IOC和DI的理解,它们有什么区别? Thread 类中的start() 和 run() 方法有什么区别? 解释一下java.io....

    SQL有如下分类总结

    数据操作语句(DML): 包括增(insert)、 删(delete)和 改(update)。 数据定义语句(DDL): 用于建立(create)、 修改(alter)和 删除数据库对象(drop)。《会自动提交事务》 数据控制语句...

    MySQL基础速记

    SQL命令分可以分为四组:DDL、DML、DCL和TCL。四组中包含的命令分别如下 (图片来源见水印) DDL DDL是数据定义语言(Data Definition Language)的简称,它处理数据库schemas和描述数据应如何驻留在数据库中。 ...

    MySQL ddl语句的使用

    SQL的语言分类主要包含如下几种: DDL 数据定义语言 create、drop、alter 数据定义语言 create、drop、alter 语句 。 DML 数据操纵语言 insert、delete、update 定义对数据库记录的增、删、改操作。 DQL ...

    Oracle经典教程

    在Oracle开发中,客户端把SQL语句发送给服务器,服务器对SQL语句进行编译、执行,把执行的结果返回给客户端。Oracle SQL语句由如下命令组成: 数据定义语言(DDL),包括CREATE(创建)命令、ALTER(修改)命令、...

    Oracle简介,常用SQL知识

    简单介绍Oracle安装,DDL(数据定义语言)、DML(数据操纵语言) DCL(数据控制语言)、TCL(事物控制语言)等数据库相关语言的操作与配置,及需要注意的事项

    java学习笔记之sql常用语句

     DML(Data Manipulation Language):用于增删改查数据库中数据;  DCL(Data Control Language)用来向用户赋予/取消对数据对象的控制权限;  TCL(Transaction Control Language):用来对事务进行管理  数据库...

    MySql基础命令详解(基础篇)

    Sql,分为DQL(查询),DML(修改),DDL(管理),TCL(事物的处理)。 **DDL语句:**数据定义语句,定义了不同的数据库,表,列,索引等。 **DML语句:**数据操纵语句,用于添加,删除,更新和查询数据库记录和检查数据完成性...

    MySQL 数据库经典面试题

    1、SQL语句分类:数据定义语句(DDL)、数据操纵语句(DML)、数据查询语句(DQL)、事务控制语句(TCL)、数据控制语句(DCL)。 2、数据类型:数值类型、字符类型、日期时间类型、 3、数据库函数:数值处理函数...

    Oracle数据库之表与表数据操作

    SQL语言分为四种,分别是:数据定义语言(DDL)、数据操纵语言(DCL)、事务控制语言(TCL)、数据控制语言(DML)。 1.1 数据定义语言(DDL) 建立、修改、删除数据库对象,如数据库、表、视图等。数据定义语言...

    Oracle数据库学习笔记

    数据定义语言(DDL): Create(创建), Alter(更改), Drop(删除). 数据操纵语言(DML): Select(选择), Insert(插入), Update(更新), Delete(删除). 事务控制语言(TCL) : Commit(提交), ...

Global site tag (gtag.js) - Google Analytics