• ORACLE_创建和管理表


    

    ORACLE_创建和管理表

    ①常见的数据库对象
    表:主要的数据存储集合,由行和列组成。
    视图:从表中抽出的逻辑上相关的数据集合。
    序列:提供有规律的数值。
    索引:提高查询的效率
    同义词:给对象起别名

    ②Oracle 数据库中的表
    1.用户定义的表:
    用户自己创建并维护的一组表,包括了用户所需的信息
    如:SELECT * FROM user_tables;查看用户创建的表
    2.数据字典:
    由 Oracle Server 自己主动创建的一组表
    包括数据库信息

    ③查询数据字典
    查看用户定义的表.
    SELECT table_name FROM user_tables ;
    查看用户定义的各种数据库对象
    SELECT DISTINCT object_type FROM user_objects ;
    查看用户定义的表, 视图, 同义词和序列
    SELECT * FROM user_catalog

    ④表名和列名命名规则:
    1.必须以字母开头
    2.必须在 1–30 个字符之间
    3.必须仅仅能包括 A–Z, a–z, 0–9, _, $, 和 #
    4.必须不能和用户定义的其它对象重名
    5.必须不能是Oracle 的保留字

    ⑤CREATE TABLE 语句
    必须具备:
    1.CREATE TABLE权限
    2.存储空间
    CREATE TABLE [schema.]table
         (column datatype [DEFAULT expr][, ...]);

    3.必须指定:
        表名
        列名, 数据类型, 尺寸

    4.数据类型:描写叙述
    VARCHAR2(size):可变长字符数据
    CHAR(size):定长字符数据
    NUMBER(p,s):可变长数值数据
    DATE:日期型数据
    LONG:可变长字符数据,最大可达到2G
    CLOB:字符数据,最大可达到4G
    RAW (LONG RAW):原始的二进制数据
    BLOB:二进制数据。最大可达到4G
    BFILE:存储外部文件的二进制数据。最大可达到4G
    ROWID:行地址

    5.使用子查询创建表
    使用 AS subquery 选项。将创建表和插入数据结合起来
    CREATE TABLE table
         [(column, column...)]
    AS subquery;
    指定的列和子查询中的列要一一相应
    通过列名和默认值定义列

    注:原来表中的数据会插入到新创建的表中,若不须要数据。加入一个FALSE条件就可以

    ⑥ALTER TABLE 语句
    1.使用 ALTER TABLE 语句追加, 改动, 或删除列的语法
    追加列
    ALTER TABLE table
    ADD     (column datatype [DEFAULT expr]
         [, column datatype]...);

    改动列
    ALTER TABLE table
    MODIFY    (column datatype [DEFAULT expr]
         [, column datatype]...);

    注:假设列中有数据是不能改动类型的,默认值仅仅对后加入的数据有效

    删除列
    ALTER TABLE table
    DROP COLUMN  column_name;

    重命名列
    ALTER TABLE table_name
    RENAME COLUMM old_column_name TO new_column_name

    设置列不可用
    ALTER TABLE table_name
    set unused COLUMM column_name

    ⑦删除表
    数据和结构都被删除
    全部正在执行的相关事务被提交
    全部相关索引被删除
    DROP TABLE 语句不能回滚

    DROP TABLE table_name;

    ⑧清空表
    TRUNCATE TABLE 语句:
    删除表中全部的数据
    释放表的存储空间
    TRUNCATE语句不能回滚
    能够使用 DELETE 语句删除数据,能够回滚

    TRUNCATE TABLE table_name;

    ⑨改变对象的名称
    运行RENAME语句改变表, 视图, 序列, 或同义词的名称
    必须是对象的拥有者

    RENAME old_object_name TO new_object_name;

    注:以上DDL语言都不能回滚,运行完就默认提交

  • 相关阅读:
    Ubuntu 中软件的安装、卸载以及查看的方法总结
    无锁队列的环形数组实现
    Geodatabase模型
    地图投影与ArcGIS坐标系转换
    ARCGIS动态画点
    ArcEngine数据删除几种方法和性能比较
    AE开发技术文档--8种数据访问方法
    Hibernate 的HQL和sql有什么区别
    ActionContextCleanUp作用
    Hibernate延迟加载与opensessioninviewFilter
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/5110038.html
Copyright © 2020-2023  润新知