什么意思??如果只是自动增量的话,用:
select max(id)+1 from table

解决方案 »

  1.   

    1.设置好了数据集组件,如:Query1.
    2.双击 Query1,右击字段编辑器(或Ctrl+N),选New Filed...
    3.新建一个计算字段。如:
        object Query1ids: TIntegerField
          FieldKind = fkCalculated
          FieldName = 'ids'
          Calculated = True
        end
    4.在TForm1的Public
    里添加变量 ids;5.在Query1的BeforeOpen事件里初始化该变量。
       ids:=0;6.在Query1组建的OnCalcFields事件里编写代码:
      inc(ids);
      self.Query1ids.AsInteger:=ids;ok.
      

  2.   

    利用生成序列的办法,看看sql的书会有的 如oracle的 书
      

  3.   

    同意响马的意见,生成一个计算字段,然后记录集的记录号recno分别赋值给相应记录的计算字段即可。其他语言的开发也是类似啊,你可以使用查询生成你需要的记录集,然后利用记录集的recno属性反映这个ID值。
      

  4.   

    ADO生成的recordset是有recno属性的,好象是recordno,翻翻资料吧,呵呵
      

  5.   

    在数据集中新建一个计算字段id,在Dataset的OnCalcField(记不太清)事件中将RecNo的值赋给id.。
      

  6.   

    sql server:
    select IDENTITY(int,1,1) as Id,* from TableName where ...
      

  7.   

    sql server: 
    select IDENTITY(int,1,1) as Id,* into #Temp from TableName where ... 
    select * from #Temporacle:
    select rowno as id,* from TableName where ...
      

  8.   

    纯粹的递增不是很好,id号长度会变,会不统一,而且,数值会越来越长,
    可以写一存储过程实现固定长度的id自动生成,当然,会麻烦一点,例如你可以利用日期加上数字实现,完全可行的.