DDL

1.SQL分为5大类:
DDL:数据定义语言
DCL:数据控制语言
DML:数据操纵语言
DTL:数据事务语言
DQL:数据查询语言

2.DDL(data definition language):create,drop,alter,rename to

创建表格分为两个步骤:
a.定义列和数据类型
b.添加约束

数据类型:
1.数字类型,可以做所有的数学运算
number
number(4)代表整数,最大能存9999
number(7,2)代表double类型,整数长度为5,小数位2

2.字符型,可以做拼接运算
char(20) 定长
varchar2(20) 不定长,表示字符窜最长是20
注意:字符串在数据库中用''

3.日期类型,可以做加减运算
Date 年月日时分秒
Time 时分秒
Timestamp 年月日时分秒,还有小时位,如1.2秒

4.大数据类型
clob character large object 大字符型对象,最大可存4G
blob binary large object 大二进制对象,最大可存4G
注意:大数据类型不支持查看结果

约束(constraint)
作用:约束表格中是数据,相对于数据类型而言,用来进一步限定表中的数据,使得添加到表中的数据都是合法有效的,符合业务需求的数据,不会出现无效数据

3.Oracle中的5种约束类型
primary key PK 含义:主键约束,非空唯一(表中最多只能含有一个主键约束)
not null NN 含义:非空
unique UK 含义:唯一
check CK 含义:自定义约束(往往用来定义业务的约束,如分数不能为负)
foreign key FK 含义:外键约束(表示此列的值是引用自己的或其他表的主键)
注意:能够被外键所引用的列,其本身也必须是主键约束或唯一性约束

4.创建表格的第一种方法:
语法:
create table 表名(
列名 数据类型(默认值) 约束,
列名 数据类型(默认值) 约束,
列名 数据类型(默认值) 约束
);

例:
--创建用户表(无约束)
create table tbl_user(
id number(6),
name varchar2(25),
password varchar2(25)
);

注意:在创建表格时,如果不定义约束的名字,则数据库会给约束提供默认名字,并且把这些内容存储到数据库字典中

添加约束名的语法:
constraint 约束名 约束类型;
约束名的命名规范:
表名_列名_约束类型缩写;

--创建用户表(有约束)

DML(insert,update,delete)

1.插入数据
insert into 表名(列,列...)values(值,值...)
//当插入的数据与表格一一对应时,列可以省略
insert into 表名 values(值,值...)

例如:--给tbl_user表中添加一条记录
insert into tbl_user values (22,'刘强东','123456');

2.更新数据
update 表名 set 列=新值 where 条件;

例如:--修改tbl_user表中第二行记录的用户名
update tbl_user username = '章泽天' where id = 2;

注意:修改操作千万要注意条件!!!

3.删除数据
delete 表名 where 条件

例如:删除用户表格第三行
delete tbl_user where id = 4;

--删除用户表格第三行的密码

注意:此处不能违反约束

--------------------------------------------
DML语句和DDL语句的差别
1.DML语句不会自动提交,也就是说当运行完DML语句后,数据库中真实的数据还没有发生变化,当前自己事务中看到的仅仅是内存中的情况,所以此时,另外一个事务是无法看到修改结果的。
如果要把修改后的结果同步到数据库中,则必须手动使用如下命令:
--提交数据,把内存中的数据提交同步到数据库中
commit;

即:一个事务无法读取到另一个事务还没有提交的数据!!!

注意:plsql中默认情况下DML 语句会自动提交

--回滚操作,撤销还没有提交的操作
rollback 回滚点名字;

--设置回滚点【不需要掌握】
savepoint 回滚点名字

2.DDL语句是自动提交的

DML DDL的更多相关文章

  1. RDBMS DML DDL

    RDBMS RDBMS 指的是关系型数据库管理系统. RDBMS 是 SQL 的基础,同样也是所有现代数据库系统的基础,比如 MS SQL Server, IBM DB2, Oracle, MySQL ...

  2. SQL语句 DML,DDL,DCL

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

  3. SQLite中DML DDL DML命令的区别[转]

    总体解释: DML(data manipulation language):       它们是SELECT.UPDATE.INSERT.DELETE,就象它的名字一样,这4条命令是用来对数据库里的数 ...

  4. PLSQL_PLSQL中DML/DDL/DCL的概念和区分(概念)

    2014-06-20 Created By BaoXinjian

  5. DML,DDL,DCL,DQL的区别

      DML 英文缩写 DML = Data Manipulation Language,数据操纵语言,命令使用户能够查询数据库以及操作已有数据库中的数据的计算机语言.具体是指是UPDATE更新.INS ...

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

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

  7. mysql DML DDL DCL

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

  8. 【mysql】数据库中的DML DDL DCL TCL 及 Online DDL

    DDL(data definition language) : 数据库定义语言 用来定义创建操作表的时候用到的一些sql命令,比如CREATE.ALTER.DROP等等. DML(data manip ...

  9. SQL语言分类DQL,DML,DDL,DCL,DTL

    SQL语言共分为五大类: 数据查询语言DQL 数据操纵语言DML 数据定义语言DDL 数据控制语言DCL 数据事物语言DTL DQL 数据查询语言DQL基本结构是由SELECT子句,FROM子句,WH ...

随机推荐

  1. 1S - 平方和与立方和

    给定一段连续的整数,求出他们中所有偶数的平方和以及所有奇数的立方和.  Input 输入数据包含多组测试实例,每组测试实例包含一行,由两个整数m和n组成. Output 对于每组输入数据,输出一行,应 ...

  2. ES6 Generator的应用场景

    一.基础知识 API文档 ES6 诞生以前,异步编程的方法,大概有下面四种. 回调函数 事件监听 发布/订阅 Promise 对象 Generator 函数将 JavaScript 异步编程带入了一个 ...

  3. Activity2.java

    package com.hanqi.text3; import android.app.Activity; import android.os.Bundle; import android.os.Pe ...

  4. swoole的EventLoop学习

    我们先使用php来写一个socket的服务端.先从最开始的模型开始将起逐步引申到为何要使用eventloop 1.最简单的socket服务端,直接按照官方文档来执行 <?php $sock = ...

  5. poj 2785 让和为0 暴力&二分

    题目链接:http://poj.org/problem?id=2785 大意是输入一个n行四列的矩阵,每一列取一个数,就是四个数,求有多少种着四个数相加和为0的情况 首先脑海里想到的第一思维必然是一个 ...

  6. Scrapy-Redis分布式策略

    Scrapy-Redis分布式策略 原理图: 假设有四台电脑:Windows 10.Mac OS X.Ubuntu 16.04.CentOS 7.2,任意一台电脑都可以作为 Master端 或 Sla ...

  7. GBDT-梯度提升树

    随机森林:bagging思想,可以并行,训练集权值相同 可以是分类树,回归树 输出结果(分类树):多数投票         (回归树):均值 减少方差 对异常数据不敏感 GBDT:拟合损失函数 boo ...

  8. 学习selenium的过程

  9. 这一周~&&html+css的学习感悟

    一周一周过的很快,这个礼拜的学习状态并不是很好,好像每个月都有那么几天学习状态不怎么样.不知道是懈怠了还是怎么了…… 没有辜负上周一开始的目标,4.6号之前我就糊好了篇论文交了上去,不知道结果如何,希 ...

  10. Nodejs学习笔记:基础

    本文章主要记录Nodejs基础知识点 安装 首先从Node.js官网下载安装包,并添加到环境变量.然后打开命令行,输入 node --version ,可查看版本信息 npm是Node.js的包管理工 ...