我建立一张表,譬如名字tbltest  ,共有3列id date rate ,要求多次插入时候,如果id date 都相同的行不会重复插入。
希望在建立表格时候,就能通过设置索引解决。请问这样的话。建立表格的语句该怎么写?

解决方案 »

  1.   

    create table TBLTEST
    (
      ID     NUMBER not null,
      V_DATE DATE not null,
      RATE   NUMBER
    )
    alter table TBLTEST
      add constraint PK_TAB primary key (ID, V_DATE)
      

  2.   


    create table TBLTEST 

      ID    NUMBER not null, 
      V_DATE DATE not null, 
      RATE  NUMBER 
    ) ;
    alter table TBLTEST 
      add constraint PK_TAB primary key (ID, V_DATE)
      

  3.   

    建完表以后,创建唯一索引。alter table tbltest add constraint tbltest_un unique(date,rate ) ;
      

  4.   

    修改一下alter table tbltest add constraint tbltest_un unique(id, date ) ;
      

  5.   


    create table TBLTEST
    (
      ID     NUMBER not null,
      V_DATE DATE not null,
      RATE   NUMBER
    );
    create unique index IDX_TAB on TBLTEST (ID, V_DATE);
      

  6.   

    -- 使用唯一约束CREATE TABLE TBLTEST (ID NUMBER,SDATE DATE,RATE NUMBER,CONSTRAINT UNI_ID_SDATA_ UNIQUE(ID,SDATE));
      

  7.   

    CREATE TABLE TBLTEST (ID NUMBER,SDATE DATE,RATE NUMBER,CONSTRAINT UNI_ID_SDATA_ UNIQUE(ID,SDATE));
      

  8.   

    --给个例子:drop table table_test;                             --创建表;
    create table table_test(id number(8) primary key,
                            name varchar2(10)
    );create index idx_test on table_test(id,name);      --创建索引。
      

  9.   

    create index idx_test on table_test(id,name);      --创建索引。
    普通索引不行有空的情况比如1,。
    。,2
      

  10.   

    创建id,date的主键或建唯一索引
      

  11.   

    create table tbltest(id int, dt date, rate varchar2(10),primary key(id,rate)) ;
      

  12.   

    SQL> insert into tbltest values(1,sysdate,'aaa');
     
    1 row inserted
     
    SQL> insert into tbltest values(1,sysdate,'bbb');
     
    1 row inserted
     
    SQL> insert into tbltest values(2,sysdate,'ccc');
     
    1 row inserted
     
    SQL> insert into tbltest values(2,sysdate-1,'ccc');
     
    insert into tbltest values(2,sysdate-1,'ccc')
     
    ORA-00001: 违反唯一约束条件 (BWDASOC.SYS_C006167)