(n. 定义;[物] 清晰度;解说)用于定义数据的结构,建立,修改,删除数据库对象数据库
1、表的增删改查spa
一、建立表:CREATE TABLE temp AS (SELECT * FROM emp WHERE 1==2) 建立表结构。对象
CREATE TABLE temp(字段名称 字段类型(默认值))it
二、删除表:DROP TABLE person (须要回滚);io
TRUNCATE TABLE tperson ;(直接截断)date
三、增长表字段:ALTER TABLE person ADD (address VARCHAR(200) DEFAULT ' ') ;方法
四、修改表字段结构:ALTER TABLE MODIFY ( DEFAULT )next
RENAME 旧名称TO新名称 ; 命名
2、约束:数据
DROP TABLE person ;
CREATE TABLE person
(
pid VARCHAR2(18)PRIMARY KEY(一、主键约束) ,
name VARCHAR2(200)NOT NULL(二、非空约束) ,
age NUMBER(3) ,UNIQUE NOT NULL(三、惟一约束除主键外)
birthday DATE ,NOT NULL(四、非空约束)
sex VARCHAR2(2) DEFA CHECK(age BETWEEN 0 AND 150)/CHECK(sex IN ('男 ','女'))(五、检查约束)
CONSTRAINT person_pid_pk PRIMARY KEY(pid) 为pid约束命名(六、外键约束)
增长外键约束:ALTER TABLE book ADD CONSTRAINT person_book_pid_fk FOREIGN KEY(pid) REFERENCES person(pid) ON DELETE CASCADE ;表里加外键约束。
删除外键约束:ALTER TABLE 表名称DROP CONSTRAINT 约束名称;
3、伪列:
SELECT ROWNUM,empno,ename,job,sal,hiredate FROM emp WHERE ROWNUM<=5;
4、集合:
UNION(无重复) UNION ALL(有重复) INTERSECT (俩个相同)MINUS (不一样集合)
5、视图建立:
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子查询 ;
6、序列:
建立格式
CREATE SEQUENCE sequence
[INCREMENT BY n] 每次增加幅度
[START WITH n]序列从1开始
[{MAXVALUE n | NOMAXVALUE}]最大值
[{MINVALUE n | NOMINVALUE}]最小值
[{CYCLE|NOCYCLE}]表示达到最大值后从头开始,也能够为nocycle
[{CACHE n|NOCACHE}] ;防止数据库挂掉数据库不能使用
nextVal方法,取得序列下一个内容,currVal取得序列当前内容
7、同义词:CREATE SYNONYM 同义词名称FOR用户名.表名称 ;
建立:CREATE SYNONYM emp FOR scott.emp ;
删除:DROP SYNONYM emp ;
Dual是sys用户下。但在全部用户表中均可用dual表(虚拟表)