oracle建表涉及信息

 建表语句及加字段注释                                                                         

-- CREATE TABLE  创建小程序卡片表                                                 
create table GIMDATA.GIM_CLOUD_MINIPROGRAM_CARD                                   
(                                                                                 
  ID_GIM_CLOUD_MINIPROGRAM_CARD     VARCHAR2(32) not null  ,    -- primary key 主键                    
                                    
)  ;                                                                                    
-- Add comments to the table                                                      
comment on table GIM_CLOUD_MINIPROGRAM_CARD                                       
  is '小程序卡片模板表';                                                          
-- Add comments to the columns                                                    
comment on column GIMDATA.GIM_CLOUD_MINIPROGRAM_CARD.ID_GIM_CLOUD_MINIPROGRAM_CARD
                         

                                                       
Oracle中建表和指定表空间

--建一个表
create table HH2(

tid number primary key ,--主键设定

tname varchar2(20)

);

--删除表
drop table HH;

--表空间(相当于一个数据库)(DBA权限)
create tablespace test
datafile 'D:test.dbf'
size 10M
autoextend on
next 10M
maxsize 100M

--指定表在那个表空间里面(默认在USERS表空间里)
create table HH(tid number primary key)
tablespace test;
select * from tabs;

--删除 表空间
drop tablespace test including contents and datafiles --连带物理文件和表空间中的数据也一起删除


--建表建约束

create table student1(
sid number primary key ,
sname varchar2(20) not null,
sage number,
ssex char(2),
saddress varchar2(100),
cid number references tclass(cid)--建立外键关系
);
create table tclass 
(
cid number primary key,
cname varchar2(20)
);
--唯一unique 检查 check 默认值 modify 添加外键关系 添加列
alter table student1 add constraint UQ_student1_sname unique(sname);
alter table student1 add constraint CK_student1_agae check(sage between 19 and 70);
alter table student1 modify ssex default '男';
alter table student1 add constraint FK_student1_cid foreign key(cid) references tclass(cid);
alter table student1 add dt date;
--删除约束
alter table student1 drop constraint UQ_student1_sname ;


oracle提供了以下几种分区类型:
    范围分区(range)
    哈希分区(hash)
    列表分区(list)
    范围-哈希复合分区(range-hash)
    范围-列表复合分区(range-list)
    
    查看分区数  :select*from user_tab_partitions where table_name='表名'
    查看分区内容:select * from 表名 partition(分区名) ;
    
    alter table 表名 add partition 分区名 values (分区字段)
    tablespace tbs_zba_czc       --表空间
    pctfree 10                      --预留的空间大小,10%
    initrans 1                      --的是一个 block 上初始预分配给并行交易控制的空间
    maxtrans 255                  --如果initrans 不够了,自动扩展,最大这个值

 create table test2
(
  msg_id      VARCHAR2(16),
  result      INTEGER,
  ts          VARCHAR2(17),
  ts_time     TIMESTAMP(6),
  insert_time DATE
)
partition by range (TS_TIME)
(
  partition P20180110 values less than (TIMESTAMP' 2018-01-11 00:00:00.000')
    tablespace USERS
    pctfree 10
    initrans 1
    maxtrans 255
    storage
    (
      initial 64K
      next 1M
      minextents 1
      maxextents unlimited
    )
);
  分区表示例:
        create table temp_fee(
        month_id             varchar2(6),
        prov_id              varchar2(3),
        total_fee            number)
        nologging
        
        partition by range (month_id)  --主分区
        
        subpartition by list (prov_id) --子分区
        (
          partition part201606 values less than ('201711')
            tablespace tbs_zba_jm
            pctfree 10
            initrans 1
            maxtrans 255
          (
            subpartition sys_subp20429 values (default) tablespace tbs_zba_jm
          )
        );


                          

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页