DDL Data Definition(重点)

(n. 定义;[物] 清晰度;解说)用于定义数据的结构,创建,修改,删除数据库对象

一、表的增删改查

1、创建表:CREATE TABLE temp AS (SELECT * FROM emp WHERE 1==2) 创建表结构。

CREATE TABLE temp(字段名称 字段类型(默认值))

2、删除表:DROP TABLE person (需要回滚);

TRUNCATE TABLE tperson ;(直接截断)

3、增加表字段:ALTER TABLE person ADD (address VARCHAR(200) DEFAULT ' ') ;

4、修改表字段结构:ALTER TABLE MODIFY ( DEFAULT )

RENAME 旧名称TO新名称 ;

二、约束:

DROP TABLE person ;

CREATE TABLE person

(

pid VARCHAR2(18)PRIMARY KEY(1、主键约束) ,

name VARCHAR2(200)NOT NULL(2、非空约束) ,

age NUMBER(3) ,UNIQUE NOT NULL(3、唯一约束除主键外)

birthday DATE ,NOT NULL(4、非空约束)

sex VARCHAR2(2) DEFA CHECK(age BETWEEN 0 AND 150)/CHECK(sex IN ('男 ','女'))(5、检查约束)

CONSTRAINT person_pid_pk PRIMARY KEY(pid) 为pid约束命名(6、外键约束)

增加外键约束:ALTER TABLE book ADD CONSTRAINT person_book_pid_fk FOREIGN KEY(pid) REFERENCES person(pid) ON DELETE CASCADE ;表里加外键约束。

删除外键约束:ALTER TABLE 表名称DROP CONSTRAINT 约束名称;

三、伪列:

SELECT ROWNUM,empno,ename,job,sal,hiredate FROM emp WHERE ROWNUM<=5;

四、集合:

UNION(无重复) UNION ALL(有重复) INTERSECT (俩个相同)MINUS (不同集合)

五、视图创建:

CREATE VIEW 视图名称 AS 子查询 WITH CHECK OPTION(不更新创建条件);

CREATE VIEW 视图名称 AS 子查询 WITH READ ONLY(只读视图操作)

Eg:CREATE VIEW empv20 AS SELECT empno,ename,job,hiredate FROM emp WHERE deptno=20 ;

视图删除:DROP VIEW empv20 ;

视图修改:CREATE OR REPLACE 视图名称AS子查询 ;

六、序列:

创建格式

CREATE SEQUENCE sequence

[INCREMENT BY n] 每次增长幅度

[START WITH n]序列从1开始

[{MAXVALUE n | NOMAXVALUE}]最大值

[{MINVALUE n | NOMINVALUE}]最小值

[{CYCLE|NOCYCLE}]表示达到最大值后从头开始,也可以为nocycle

[{CACHE n|NOCACHE}] ;防止数据库挂掉数据库不能使用

nextVal方法,取得序列下一个内容,currVal取得序列当前内容

七、同义词:CREATE SYNONYM 同义词名称FOR用户名.表名称 ;

创建:CREATE SYNONYM emp FOR scott.emp ;

删除:DROP SYNONYM emp ;

Dual是sys用户下。但在所有用户表中都可用dual表(虚拟表)

2.3 Oracle之DDL 语句(约束、伪列、视图、序列、同义词) 精简版的更多相关文章

  1. oracle(sql)基础篇系列(三)——数据维护语句、数据定义语句、伪列

      DML语句 insert 向表中插入新的记录   --三种插入方式 --(1)不写字段的名字,直接按照字段的顺序把值逐个往里插 insert into dept2 values(50,'DANAM ...

  2. oracle(sql)基础篇系列(三)——数据维护语句、数据定义语句、伪列

    DML语句 insert 向表中插入新的记录 --三种插入方式 --(1)不写字段的名字,直接按照字段的顺序把值逐个往里插 insert into dept2 values(50,'DANAME',' ...

  3. Oracle 获取ddl语句

    --得到所有表空间的ddl语句 SELECT DBMS_METADATA.GET_DDL('TABLESPACE', TS.tablespace_name)FROM DBA_TABLESPACES T ...

  4. Oracle Schema Objects——Sequences(伪列:nextval,currval)

    Oracle Schema Objects 序列的作用 许多的数据库之中都会为用户提供一种自动增长列的操作,例如:在微软的Access数据库之中就提供了一种自动编号的增长列(ID列).在oracle数 ...

  5. oracle获得ddl语句

    dbms_metadata.get_ddl()用于获取对象的DDL,其具体用法如下.注意:在sqlplus里,为了更好的展示DDL,需要设置如下参数:set line 200set pagesize ...

  6. oracle常用DDL语句

    1.添加表字段--咨询表添加内容简介字段 ALTER TABLE s_table ADD intro VARCHAR2(1024); COMMENT ON COLUMN s_table.remarks ...

  7. oracle序列使用时 先用伪列将序列的id调整到正确的位置

  8. oracle学习笔记(十四) 数据库对象 索引 视图 序列 同义词

    数据库对象 用户模式:指数据库用户所创建和存储数据对象的统称.在访问其它用户模式的数据库对象时需加上用户模式. 如:scott.emp, scott.dept等. 数据库对象包括:表.视图.索引.序列 ...

  9. oracle学习笔记(十四) 数据库对象 索引 视图 序列 同义词

    数据库对象 用户模式:指数据库用户所创建和存储数据对象的统称.在访问其它用户模式的数据库对象时需加上用户模式. 如:scott.emp, scott.dept等. 数据库对象包括:表.视图.索引.序列 ...

随机推荐

  1. 【ansible】Windows开启远程控制错误解决方案:无法检查防火墙状态

    这个在老版本的Windows系统才有这种bug.例如Windows 2008 R2和Windows 7,如果你的系统的阿里云的Windows server 2008 R2,无需装这个,好像阿里云的系统 ...

  2. 51nod 1443 路径和树(最短路)

    题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1443 1443 路径和树 题目来源: CodeForces ...

  3. Yarn遭到挖矿病毒攻击

    测试环境在阿里云上暴露出了公网端口,前一段时间CDH集群原本是开启了Kerberos认证,但是因为大家反映使用麻烦,所以就又关闭了Kerberos. 最近几天大家普遍反映测试环境上hive和hdfs ...

  4. Google免费GPU使用教程(Google Colab Colaboratory)

    参考: https://www.234du.com/1154.html https://mp.weixin.qq.com/s/TGTToLYSQJui94-bQC4HIQ 注册gmail时遇到手机号无 ...

  5. c++——初始化列表

    多个对象构造和析构 1对象初始化列表 1)对象初始化列表出现原因 1.必须这样做: 如果我们有一个类成员,它本身是一个类或者是一个结构,而且这个成员它只有一个带参数的构造函数,没有默认构造函数.这时要 ...

  6. python 编码规范起源:PEP8 编码规范中文版

    PEP: 8 标题: Python代码的样式指南 版: c451868df657 最后修改: 2016-06-08 10:43:53 -0400(2016年6月8日星期三) 作者: Guido van ...

  7. 在Linux环境下设置ArcGIS Server 服务开机自启

    在 VMware 11.0 中安装了CentOS 6.5的Linux系统中部署ArcGIS Server,安装完后默认开机不自动启动此服务,每次开机都要手动启动(如下图所示),这样太麻烦.本文记录了设 ...

  8. Tomcat出现需要输入账号和密码问题

    这里是端口冲突问题: 可以做一下几个解决方案: 第一:更好Tomcat/conf/server.xml文件里面的制定8080端口号,更改为你能记住的端口数: 第二:找到冲突的端口的进程,杀死这个进程, ...

  9. BZOJ2595: [Wc2008]游览计划(斯坦纳树,状压DP)

    Time Limit: 10 Sec  Memory Limit: 256 MBSec  Special JudgeSubmit: 2030  Solved: 986[Submit][Status][ ...

  10. 如何修改macbook的MAC地址

    修改命令 sudo ifconfig en0 ether xx:xx:xx:xx:xx:xx 查看 ifconfig en0 | grep ether 随机生产一个MAC地址 openssl rand ...