CREATE TABLE OSPFNETWORKLSA
(
  ENTITYID     NUMBER(10)                       NOT NULL,
  LINKSTATEID  VARCHAR2(15 BYTE)                NOT NULL,
  NETWORKMASK  VARCHAR2(15 BYTE)                NOT NULL,
  NETWORKTYPE  VARCHAR2(10 BYTE)                NOT NULL
)
TABLESPACE NCIM
PCTUSED    0
PCTFREE    10
INITRANS   1
MAXTRANS   255
STORAGE    (
            INITIAL          128K
            NEXT             128K
            MINEXTENTS       1
            MAXEXTENTS       2147483645
            PCTINCREASE      0
            BUFFER_POOL      DEFAULT
           )
LOGGING 
NOCOMPRESS 
NOCACHE
NOPARALLEL
MONITORING;
CREATE UNIQUE INDEX OSPFNETWORKLSA_PK ON OSPFNETWORKLSA
(ENTITYID)
LOGGING
TABLESPACE NCIM
PCTFREE    10
INITRANS   2
MAXTRANS   255
STORAGE    (
            INITIAL          128K
            NEXT             128K
            MINEXTENTS       1
            MAXEXTENTS       2147483645
            PCTINCREASE      0
            BUFFER_POOL      DEFAULT
           )
NOPARALLEL;
ALTER TABLE OSPFNETWORKLSA ADD (
  CONSTRAINT OSPFNETWORKLSA_PK
 PRIMARY KEY
 (ENTITYID)
    USING INDEX 
    TABLESPACE NCIM
    PCTFREE    10
    INITRANS   2
    MAXTRANS   255
    STORAGE    (
                INITIAL          128K
                NEXT             128K
                MINEXTENTS       1
                MAXEXTENTS       2147483645
                PCTINCREASE      0
               ));
ALTER TABLE OSPFNETWORKLSA ADD (
  CONSTRAINT OSPFNETWORKLSA_ENTITY_FK 
 FOREIGN KEY (ENTITYID) 
 REFERENCES ENTITY (ENTITYID)
    ON DELETE CASCADE);
看到上面的建表语句,我突然发现我不会写建表了,原来的create语句,曾几何时变得这么复杂,如果我用system建表,那这个表到底会建到哪个tablespace下呢?如果我想让这张表建在ncim这个表空间下,那如何写最重简单呢?有点迷茫?

解决方案 »

  1.   

    既然是sys,如果不指定表空间的话,那么默认肯定是系统表空间
      

  2.   

    create table OSPFNETWORKLSA(....) tablespace ncim
      

  3.   

    SYSTEM用户的默认表空间就是SYSTEM,
    create table t1(id int) tablespace tbs_a;
      

  4.   


    对于特殊的情况表才会这么的复杂
    默认是在用户的默认表空间 system下create table tb(.....)  tablespace ncim 
      

  5.   

    SYSTEM用户的默认表空间就是SYSTEM
    创建表 要指定表空间 。
      

  6.   

    那是不是如果我要建在nicm这个用户下,只需要建到相应的表空间下即可?
      

  7.   

    要是建表不指定所属的表空间 就是当前用户的默认表空间也可以指定  就是前面说的 后面加个tablespace 表空间名字
      

  8.   

    直接  create table tablename(
    col1 datatype,
    col2 datatype)
    这样就得了,至于表空间应该在建用户的时候就应该指定默认表空间的
    其他的似乎没必要设置了,除非是非常大的表,而且访问量非常大的
      

  9.   

    SYSTEM用户的默认表空间就是SYSTEM,
    create table t1(id int) tablespace tbs_a;
      

  10.   

    用PLSQL可视化建表你感觉不方便么?
      

  11.   

    可是设置默认的表空间啊!create table ts (。) default tablespace name;