Oracle表空间

一、准备表空间

create tablespace ts_infecard01 datafile 'D:/oracle/product/ts_infecard01.dbf' size 200m autoextend on next 50M  maxsize unlimited;
create tablespace ts_infecard02 datafile 'D:/oracle/product/ts_infecard02.dbf' size 200m autoextend on next 50M  maxsize unlimited;
create tablespace ts_infecard03 datafile 'D:/oracle/product/ts_infecard03.dbf' size 200m autoextend on next 50M  maxsize unlimited;
create tablespace ts_infecard04 datafile 'D:/oracle/product/ts_infecard04.dbf' size 200m autoextend on next 50M  maxsize unlimited;
create tablespace ts_infecard05 datafile 'D:/oracle/product/ts_infecard05.dbf' size 200m autoextend on next 50M  maxsize unlimited;
create tablespace ts_infecard06 datafile 'D:/oracle/product/ts_infecard06.dbf' size 200m autoextend on next 50M  maxsize unlimited;
create tablespace ts_infecard07 datafile 'D:/oracle/product/ts_infecard07.dbf' size 200m autoextend on next 50M  maxsize unlimited;
create tablespace ts_infecard08 datafile 'D:/oracle/product/ts_infecard08.dbf' size 200m autoextend on next 50M  maxsize unlimited;
create tablespace ts_infecard09 datafile 'D:/oracle/product/ts_infecard09.dbf' size 200m autoextend on next 50M  maxsize unlimited;
create tablespace ts_infecard10 datafile 'D:/oracle/product/ts_infecard10.dbf' size 200m autoextend on next 50M  maxsize unlimited;
create tablespace ts_infecard11 datafile 'D:/oracle/product/ts_infecard11.dbf' size 200m autoextend on next 50M  maxsize unlimited;
create tablespace ts_infecard12 datafile 'D:/oracle/product/ts_infecard12.dbf' size 200m autoextend on next 50M  maxsize unlimited;
create tablespace ts_infecard13 datafile 'D:/oracle/product/ts_infecard13.dbf' size 200m autoextend on next 50M  maxsize unlimited;
create tablespace ts_infecard14 datafile 'D:/oracle/product/ts_infecard14.dbf' size 200m autoextend on next 50M  maxsize unlimited;
create tablespace ts_infecard15 datafile 'D:/oracle/product/ts_infecard15.dbf' size 200m autoextend on next 50M  maxsize unlimited;

二、建表

-- Create table
create table EVT_INFECTIONCARD2
(
  CARD_ID         VARCHAR2(20) not null,
  APANAGECODE     VARCHAR2(8),
  CARD_CODE       VARCHAR2(20),
  PATIENT_NAME    VARCHAR2(40),
  PARENT_NAME     VARCHAR2(40),
  SEX1            VARCHAR2(1) not null,
  SEX2            VARCHAR2(1),
  TELP            VARCHAR2(30),
  ID              VARCHAR2(18),
  UNIT            VARCHAR2(100),
  ADDR            VARCHAR2(100),
  ADDRCODE        VARCHAR2(8) not null,
  AREATYPE        VARCHAR2(1) not null,
  START_DATE      DATE,
  DIAGNOSEDATE    DATE,
  DEADDATE        DATE,
  CASETYPE        VARCHAR2(1),
  INPUTDOCTOR     VARCHAR2(16),
  DISEASE_ID1     NUMBER(4),
  DISEASE_ID2     NUMBER(4),
  VALID_DATE2     DATE,
  VALID_DATE1     DATE,
  USERID          VARCHAR2(20),
  NOTES           VARCHAR2(200),
  STATUS          VARCHAR2(1),
  BIRTHDAY_DATE   DATE,
  FILLTIME        DATE,
  BASE_ID         NUMBER(20),
  FLAG            NUMBER(1),
  INTIME          DATE,
  VALID_TIME5     DATE,
  VALID_TIME4     DATE,
  VALID_TIME3     DATE,
  DELETETIME      DATE,
  RPTORGCODE      VARCHAR2(30) not null,
  AFTER_FILL_DATE DATE,
  CONTACTFLAG     VARCHAR2(1),
  CURRMGMTORG     VARCHAR2(30),
  DATASOURCE      VARCHAR2(3),
  MGMTSTATUS      VARCHAR2(2),
  CASETYPE2       VARCHAR2(2),
  E_RCT           DATE,
  E_LMT           DATE,
  GROUP_ID        NUMBER(4)
)

PARTITION BY RANGE(INTIME)
(  
PARTITION tbts01 VALUES LESS THAN(TO_DATE('2006-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard01,
PARTITION tbts02 VALUES LESS THAN(TO_DATE('2007-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard02,
PARTITION tbts03 VALUES LESS THAN(TO_DATE('2008-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard03,
PARTITION tbts04 VALUES LESS THAN(TO_DATE('2008-07-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard04,
PARTITION tbts05 VALUES LESS THAN(TO_DATE('2009-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard05,
PARTITION tbts06 VALUES LESS THAN(TO_DATE('2009-07-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard06,
PARTITION tbts07 VALUES LESS THAN(TO_DATE('2010-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard07,
PARTITION tbts08 VALUES LESS THAN(TO_DATE('2010-07-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard08,
PARTITION tbts09 VALUES LESS THAN(TO_DATE('2011-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard09,
PARTITION tbts10 VALUES LESS THAN(TO_DATE('2011-07-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard10,
PARTITION tbts11 VALUES LESS THAN(TO_DATE('2012-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard11,
PARTITION tbts12 VALUES LESS THAN(TO_DATE('2012-07-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard12,
PARTITION tbts13 VALUES LESS THAN(TO_DATE('2013-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard13,
PARTITION tbts14 VALUES LESS THAN(TO_DATE('2013-07-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard14,
PARTITION tbts15 VALUES LESS THAN(TO_DATE('2014-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss')) TABLESPACE ts_infecard15
);

-- Create/Recreate primary, unique and foreign key constraints 
alter table EVT_INFECTIONCARD2
  add constraint PK_INFECTIONCARD2 primary key (CARD_ID)
  disable;
-- Create/Recreate indexes 
create index IDX_INTIMEED2 on EVT_INFECTIONCARD2 (INTIME)
  tablespace BHINFOSPACE
  pctfree 10
  initrans 2
  maxtrans 255
  storage
  (
    initial 89M
    minextents 1
    maxextents unlimited
  );
-- Grant/Revoke object privileges 
grant select on EVT_INFECTIONCARD2 to ZJCH with grant option;

三、数据插入

insert into evt_infectioncard2
       (select Card_Id,Apanagecode,Card_Code,Patient_Name,Parent_Name,
               Sex1,Sex2,Telp,Id,Unit,Addr,Addrcode,Areatype,
                Start_Date,Diagnosedate,Deaddate,Casetype,
                Inputdoctor,Disease_Id1,Disease_Id2,Valid_Date2,
                Valid_Date1,Userid,Notes,Status,Birthday_Date,Filltime,
                Base_Id,Flag,Intime,Valid_Time5,Valid_Time4,Valid_Time3,
                Deletetime,Rptorgcode,After_Fill_Date,Contactflag,Currmgmtorg,
                Datasource,Mgmtstatus,Casetype2,Intime,
            case when valid_time5>intime then valid_time5
            when valid_time4>intime then valid_time4
            when valid_time3>intime then valid_time3
            when deletetime>intime then deletetime
            else intime end,
            Group_Id  from chinfectioncard
            where intime between to_date('2000-01-01 00:00:00','yyyy-MM-dd hh24:mi:ss') 
                           and to_date('2012-10-22 23:59:59','yyyy-MM-dd hh24:mi:ss') )
四、数据查询

select count(*) from evt_infectioncard2 t;
select count(*) from chinfectioncard;

select count(*) from evt_infectioncard2 partition(tbts01);
select count(*) from evt_infectioncard2 partition(tbts02);
select count(*) from evt_infectioncard2 partition(tbts03);
select count(*) from evt_infectioncard2 partition(tbts04);
select count(*) from evt_infectioncard2 partition(tbts05);
select count(*) from evt_infectioncard2 partition(tbts06);
select count(*) from evt_infectioncard2 partition(tbts07);
select count(*) from evt_infectioncard2 partition(tbts08);
select count(*) from evt_infectioncard2 partition(tbts09);
select count(*) from evt_infectioncard2 partition(tbts10);
select count(*) from evt_infectioncard2 partition(tbts11);
select count(*) from evt_infectioncard2 partition(tbts12);
select count(*) from evt_infectioncard2 partition(tbts13);
select count(*) from evt_infectioncard2 partition(tbts14);
select count(*) from evt_infectioncard2 partition(tbts15);



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值