DDL全称为Data Definition Language,是一种数据定义语言,主要用于定义数据库的结构,比如创建、修改或删除数据库对象:
常见的数据库对象有以下几种:
对象 | 描述 |
---|---|
表 | 基本的数据存储集合,由行和列组成 |
视图 | 从表中抽出的逻辑上相关的数据集合 |
序列 | 提供有规律的数值 |
索引 | 提高查询的效率 |
同义词 | 提高查询的效率 |
表 | 基本的数据存储集合,由行和列组成 |
操作对象SQL语句如下:
CREATE TABLE:创建数据库表:
CREATE TABLE Students(ID NUMBER(5)PRIMARY KEY,Name VARCHAR2(10),Age NUMBER(5),City VARCHAR2(10),MajorID NUMBER(5),Score NUMBER(5),Sex NUMBER(5));
ALTER TABLE:更改表结构、添加、删除、修改列长度:
- 添加—ADD:追加一个新列
ALTER TABLE Students ADD(ID_NUM NUMBER(18)); - 修改—MODIFY:可以修改列的数据类型, 尺寸和默认值
ALTER TABLE Students MODIFY(ID_NUM VARCHAR2(18)); - 删除–DROP COLUMN:删除不再需要的列.
ALTER TABLE Students DROP COLUMN ID_NUM; - 重命名–RENAME COLUMN [table_name] TO:重命名列
ALTER TABLE Students RENAME COLUMN ID_NUM TO ID_NUMS;
DROP TABLE:创建数据库表–数据和结构都被删除,不能回滚
DROP TABLE Students;
CREATE VIEW:创建视图:
CREATE VIEW View_Stu AS SELECT * FROM STUDENTS;
CREATE OR REPLACE VIEW:修改视图:
CREATE OR REPLACE VIEW View_Stu AS SELECT * FROM STUDENTS;
DROP VIEW:删除视图:
DROP VIEW View_Stu;
WITH READ ONLY:屏蔽对视图DML操作:
CREATE OR REPLACE VIEW View_Stu AS SELECT * FROM STUDENTS WITH READ ONLY;
CREATE SEQUENCE:创建序列— 一般用来做表的主键
CREATE SEQUENCE SE_1
INCREMENT BY 10
START WITH 10
MAXVALUE 10000
NOCACHE
NOCYCLE;
NEXTVAL:引用序列
SELECT SE_1.NEXTVAL FROM DUAL;
DROP SEQUENCE:删除序列,删除序列不能再次被引用
DROP SEQUENCE SE_1;
CREATE INDEX:创建索引:
CREATE INDEX IND_1 ON STUDENTS(NAME,SEX);
DROP INDEX:删除索引:
DROP INDEX IND_1;
CREATE SYNONYM:创建同义词,为视图View_Stu创建同义词
CREATE SYNONYM SYN_1 FOR View_Stu;
DROP SYNONYM:删除同义词:
DROP SYNONYM SYN_1;
RENAME old_name TO new_name:改变对象的名称