当前位置:文档之家› 数据定义语言

数据定义语言


• 7698
BLAKE
--------
•34200 01-MAY-81
7654
MARTIN
15000 28-SEP-81
• 7499
ALLEN
• 19200 20-FEBD-8E1PT30
• 7844
TURNER
• 18000 08-SEP-81EMPNO ENAME
•...
HIREDATE
•------ ----------
DATE
PPT文档演模板
数据定义语言
4.1.8 ALTER TABLE 语句
l 使用 ALTER TABLE 语句可以:
¯ 添加或删除一个列 ¯ 修改已存在的列 ¯ 为新列定义默认值
•ALTER TABLE table
•ADD
(column datatype [DEFAULT expr]

[, column datatype]...);
PPT文档演模板
数据定义语言
4.1.5
•类型 •VARCHAR2(size) •CHAR(size) •NUMBER(p,s) •DATE •LONG
数据类型 P50
描述 变长字符串(字符族):1~4000个字符 固定长度字符串(字符族) ):1~2000个字符 定点小数值 , p为精度, s为标度(数字族) 日期和时间值(日期族) 可存放高达2GB的变长字符数据(字符族)
数据定义语言
PPT文档演模板
2020/11/21
数据定义语言
本章要点
创建和管理Oracle表 约束 Oracle 数据库表的各种类型
PPT文档演模板
数据定义语言
4.1 创建和管理表
描述主要的数据库对象 表和列名的命名规则 创建表 描述可用于定义列的数据类型 修改表定义 删除、更名、截断表
•… hiredate DATE DEFAULT SYSDATE, …
合法的值可以是字面值、表达式或SQL函 数
非法的值是另一个列的名称或虚拟列 默认值的数据类型必须和列的数据类型匹

PPT文档演模板
数据定义语言
4.1.4 引用其他用户的表
l 属于其他用户而不属于当前用户的表 l 需使用用户名作为表的前缀
•SQL> SELECT table_name • 2FROM user_tables;
列出当前用户不同的对象类型
•SQL> SELECT DISTINCT object_type
• 2FROM
user_objects;
查询当前用户的表、视图、同义词及序列
•SQL> SELECT * • 2FROM user_catalog;
字 l 不能是Oracle的保留字
注:1. 名字不区分大小写,例如:EMP 、 eMP 或eMp指的 是同一个表。
2. 在不同的表中命名相同的实体采用保持一致的原则, 例如:部门编号在 EMP和 DEPT中都使用相同的名字 DEPTNO。
PPT文档演模板
数据定义语言
4.1.3 CREATE TABLE语句
PPT文档演模板
数据定义语言
4.1.7 用子查询创建表
--利用现有的表创建表
l 在 CREATE TABLE 语句的AS子句中使 用子查询可以在创建表的同时插入数据
•CREATE TABLE table

[column(, column...)]
•AS subq查询中列 的数量和类型相匹配

7698 BLAKE
34200 01-MAY-81

7654 MARTIN
15000 28-SEP-81

7499 ALLEN
19200 20-FEB-81

7844 TURNER
18000 08-SEP-81
•...
•6 rows selected.
PPT文档演模板
数据定义语言
修改列
l 可以修改列的数据类型、长度及默认值
•SQL> DESCRIBE dept30
• Name
Null? Type
• ---------------------------- -------- -----
• EMPNO
NOT NULL NUMBER(4)
• ENAME
VARCHAR2(10)
• ANNSAL
NUMBER
• HIREDATE
l 创建表
•SQL> CREATE TABLE dept1
••2 3
(deptno NUMBER(2), dname VARCHAR2(14),
•4
loc
VARCHAR2(13));
•表已创建。
验证是否创建成功(查看表结构)
••SQL> DESCRIBE dept1
• Name
Null? Type
•CLOB 字符大对象
可存放高达4GB的变长单字节字符数据
•RAW and LONG RAW 原始二进制数据
•BLOB 二进制大对象 可存放高达4GB二进制数据
•BFILE
引用一个外部的二进制文件;可存放高达
4GB数据

P50 表3-1
PPT文档演模板
数据定义语言
4.1.6 查询数据字典
l 列出当前用户的表
PPT文档演模板
数据定义语言
4.1.5 Oracle的数据类型
以下是 Oracle 数据类型的类别:
•数据类型
• • • • • 字符
数值
日期时间 RAW/LONG RAW
LOB
PPT文档演模板
数据定义语言
4.1.5 Oracle的数据类型
•字符数据类型
•CHAR
•VARCHAR2
•LONG
当VLA需ORN要CG固H数A定据R长2类数度型据的存类字储型符可支串变持时长可,度变使字长用符度C数字H据A符R串数据类 型VLA。ORNCGH数A据R2类数型据最类多型能存存储储字母2G数B字值 CVHAARRC数HA据R类2数型据存类储型字的母大数小字在值1。至4000个字节范 C围HA内R 数据类型的列长度可以是 1 到 2000 个字节。
• --------------------------- -------- ---------
• DEPTNO
NOT NULL NUMBER(2)
• DNAME
VARCHAR2(14)
• LOC
VARCHAR2(13)
PPT文档演模板
数据定义语言
4.1.3 创建表: DEFAULT 选项
l 指定在插入数据时,列的默认值
用户才能删除表
•SQL> DROP TABLE dept30; •表已删除。
PPT文档演模板
数据定义语言
4.1.10 修改对象的名称
l 要修改表、视图、序列或同义词的名 称,可以使用RENAME 语句
•SQL> RENAME dept1 TO department; •表已重命名。
l 您必须拥有对象的所有权.
•LOB
•CLOB
•BLOB
•BFILE
• • • LOCBLO)B,即它C能h够ar存ac储ter大L象LOB量O,BLB字O)如(B符,图字即数可形符据B以、in存视ar储频y L较剪O大辑B(的和二二声进音进件数制文制B)据F对件I库,LE它外即用部的于Bin将操a作二ry 进系Fil统制e(数文二据件进中存制储文在
l 您必须具备 :
– CREATE TABLE的权限 – 一定的存贮空间
•CREATE TABLE [schema.]table • (column datatype [DEFAULT expr];
l 您需要指定:
¯ 表名 ¯ 列名、列的数据类型及列的宽度
PPT文档演模板
数据定义语言
4.1.3 创建表(DDL)
•RENAME old_name TO new_name;
PPT文档演模板
数据定义语言
4.1.11 截断表
l TRUNCATE TABLE 语句:
– 删除表中所有记录 – 释放该表的存储空间
•SQL> TRUNCATE TABLE department; •表被截断。
l 使用TRUNCATE移除后不能回滚
– N秒UMBER [( p[, s])] –– PT表IM示ES精TA度M,PS-表存示储小日数期点、的时位间数和时区信息,
秒值精确到小数点后6位
PPT文档演模板
数据定义语言
4.1.5 Oracle的数据类型
RLOAWB 称数为据“类大型对用象于”存数储据二类进型制,数可据以存储多达 4GB 的 R非A结W构数化据信类息型,最例多如能声存音储剪2辑00和0 视字频节文件等 LLOONBG数R据A类W型数允据许类对型数用据于进存行储高可效变、长随度机的、二分进段制的数访据问 LONG RAW 数据类型最多能存储 2 GB
PPT文档演模板
l 注释可以通过以下字典表查询
¯ ALL_COL_COMMENTS
¯ USER_COL_COMMENTS
¯ ALL_TAB_COMMENTS
¯ USER_TAB_COMMENTS
PPT文档演模板
数据定义语言
4.2 约束
描述主要的约束类型 建立表的同时创建约束 对已存在的表添加、删除约束 禁用、启用约束
• 7698
BLAKE
•34200 01-MAY-81
7654
MARTIN
•15000 28-SEP-81
7499
ALLEN
PPT文档演模板
•19200 20-FEB-81
相关主题