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

目标

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

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回滚还原数据

原文地址:https://www.cnblogs.com/yxlblogs/p/3462485.html