您的位置:首页 > 数据库 > Oracle

oracle 10g 学习之创建和管理表(7)

2013-12-07 10:13 267 查看
目标

通过本章学习,您将可以:

l 描述主要的数据库对象。

l 创建表。

l 描述各种数据类型。

l 修改表的定义。

l 删除,重命名和清空表。

常见的数据库对象

表、视图、序列、索引、同义词

序列:提供有规律的数值

同义词:给对象起别名

查询数据字典

查看用户定义的表

SELECT table_name from user_tables;

查看用户定义的各种数据库对象

SELECT DISTINCT object_type

FROM user_objects ;

查看用户定义的表, 视图, 同义词和序列

SELECT *

FROM user_catalog;

命名规则

表名和列名:

l 必须以字母开头

l 必须在 1–30 个字符之间

l 必须只能包含 A–Z, a–z, 0–9, _, $, 和 #

l 必须不能和用户定义的其他对象重名

l 必须不能是Oracle 的保留字

数据类型

varchar2(size) 可变长度字符数据

char(size) 定长字符数据

number(p,s) 可变长度数值数据

date 日期型数据

long 可变长字符数据,最大可达到2G

clob 字符数据,最大可以达到4G

raw(long raw) 原始的二进制数据

blob 二进制数据,最大可达到4G

bfile 存储外部文件的二进制数据,最大可达到4G

rowid 存储外部文件的二进制数据,最大可达到4G行地址

其中,常用的数据类型有以下几种:

varchar2(size),char(size),number(p,s),date,blob

使用子查询创建表

CREATE TABLE dept80

AS
SELECT employee_id, last_name,

salary*12 ANNSAL,

hire_date
FROM employees
WHERE department_id = 80;

ALTER TABLE 语句

使用 ADD 子句追加一个新列

ALTER TABLE dept80

ADD (job_id VARCHAR2(9));

修改一个列

ALTER TABLE dept80

MODIFY (last_name VARCHAR2(30));

删除一个列

ALTER TABLE dept80

DROP COLUMN job_id;

删除表

l 数据和结构都被删除

l 所有正在运行的相关事物被提交

l 所有相关索引被删除

l DROP TABLE 语句不能回滚

DROP TABLE dept80;

改变对象的名称

l 执行RENAME语句改变表, 视图, 序列, 或同义词的名称

RENAME dept TO detail_dept;//将表名改变

清空表

TRUNCATE TABLE detail_dept;

l TRUNCATE语句不能回滚

l 可以使用 DELETE 语句删除数据

delete from emp2;

rollback;//删除数据后使用rollback回滚还原数据
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: