如题,怎么样实现?
比如我的表里有3个字段
id name sex
我想插入数据的时候id是自己加上去的。而且不会重复。怎么写语句,谢谢

解决方案 »

  1.   

    序列+触发器   本文简单介绍Oracle自增字段创建的一种方法。
         
           描述:将测试记录表pipe_test的字段id设置为自增字段。
                 *  pipe_test的表结构      
    SQL> desc pipe_test;
    Name     Type          Nullable Default Comments 
    -------- ------------- -------- ------- -------- 
    ID       NUMBER(10)                              
    CONTENT  VARCHAR2(256)          '_'              
    DATETIME DATE                   sysdate          * 创建序列       create sequence seq_inc_pipe
    start with 1
    increment by 1
    cache 20;    * 创建触发器      
    create or replace trigger trg_pipe_test_id
      before insert on pipe_test  
      for each row
    begin
      select seq_inc_pipe.nextval into :new.id from dual;
    end trg_pipe_test_id;    * 测试insert into pipe_test values(1,'test',sysdate);    
      

  2.   

    我记得有一个rownum,那个只能是在查询的时候用吗?
      

  3.   

    rownum是查询时生成的伪列
    根据查询结果始终从1开始
      

  4.   

    我试过了那个方法,可能是我笨,没做出来,谁能给我详细的解释一下,
    我的表叫usercontent
    里面有username,titleno,title,content4个字段,谁给我详细的写一下。谢谢。
      

  5.   

    插入数据哪有那么麻烦额。
    简单的insert 能做到
    insert into 那张表(哪些字段) values(插入的数据以逗号分隔)这是基础语法吧
    insert into  表名([name],age) values('张三',19)
    因为你的ID貌似是自动增长列也就是标识列所以不需要填写