• Oracle Demo ->> CREATE TABLE


     Demo One

    CREATE TABLE employees_demo
    ( employee_id NUMBER(6)
    , first_name VARCHAR2(20)
    , last_name VARCHAR2(25)
    CONSTRAINT emp_last_name_nn_demo NOT NULL
    , email VARCHAR2(25)
    CONSTRAINT emp_email_nn_demo NOT NULL
    , phone_number VARCHAR2(20)
    , hire_date DATE DEFAULT SYSDATE
    CONSTRAINT emp_hire_date_nn_demo NOT NULL
    , job_id VARCHAR2(10)
    CONSTRAINT emp_job_nn_demo NOT NULL
    , salary NUMBER(8,2)
    CONSTRAINT emp_salary_nn_demo NOT NULL
    , commission_pct NUMBER(2,2)
    , manager_id NUMBER(6)
    , department_id NUMBER(4)
    , dn VARCHAR2(300)
    , CONSTRAINT emp_salary_min_demo
    CHECK (salary > 0)
    , CONSTRAINT emp_email_uk_demo
    UNIQUE (email)
    ) 
    TABLESPACE example
    STORAGE (INITIAL 6144
    NEXT 6144
    MINEXTENTS 1
    MAXEXTENTS 5 );

    这个例子可以看出和SQL Server相比,还是有些不同的,比如

    1)是否允许NULL在Oracle下变成了Contraint

    2)然后带特定命名的Contraint可以在CREATE TABLE的代码块里面实现

    3)SQL SERVER下的GETDATE()在Oracle下变成了SYSDATE

    4)SQL SERVER下的FILEGROUP选项在Oracle下变成了TABLESPACE,当然两者还是很大区别的

    Demo Two

    --parallel
    CREATE TABLE dept_80
    PARALLEL
    AS SELECT * FROM employees
    WHERE department_id = 80;
    
    
    --unparallel
    CREATE TABLE dept_80
    AS SELECT * FROM employees
    WHERE department_id = 80;

    这个例子可以看出和SQL Server相比,还是有些不同的,比如

    1) Oracle支持在CREATE TABLE的时候加入AS字句来同时往表里填充数据,而在SQL Server下这是要分两步来的;

    2)这点才是Oracle和SQL SERVER最大的区别,就是并行处理数据。SQL SERVER不支持分布式处理,虽然并行度(DOP)一说在SQL SERVER下也有,但并非分布式。SQL SERVER可以在运行脚本的时候添加OPTION选项指定MDOP(Maximum Degree of Parallism)来运行占用多个逻辑CPU来加快命令的完成;而Oracle下则是Parallel Execution Servers,不是单纯的CPU个数。Oracle分配了多台并行处理服务器来完成整个建表、查询数据、填充数据的过程。

  • 相关阅读:
    Java 图片处理——如何生成高清晰度而占有磁盘小的缩略图
    Java文件IO操作应该抛弃File拥抱Paths和Files
    什么是内存(一):存储器层次结构
    mysql 锁
    Mysql索引面试题
    node.js中对同步,异步,阻塞与非阻塞的理解
    mysql 快照读 当前度
    mysql 联合索引
    redis 分布式锁(单机)
    docker 环境搭建redis集群相关问题
  • 原文地址:https://www.cnblogs.com/jenrrychen/p/4603501.html
Copyright © 2020-2023  润新知