key  orderno
1-1_    1
1-2_    2
1-3_    3
在我删除orderno是2的行的时候 下边的推进一个 key这个字段应该怎么处理啊?

解决方案 »

  1.   

    就是删除2那一行之后 下边3那一行的 key变成 1-2_ orderno 变成2 下边的依次类推 都增一个数
      

  2.   

    --?
    DECLARE @test TABLE(kkey varchar(10),orderno int)INSERT INTO @test(kkey,orderno)
    select '1-1_',1 union all
    select '1-2_',2 union all
    select '1-3_',3 BEGIN TRANSACTION
    DELETE FROM @test WHERE orderno = 2
    IF @@ERROR <> 0 ROLLBACK TRANSACTION
    UPDATE @test SET kkey='1-'+CAST(orderno-1 AS VARCHAR(2))+'_',orderno=orderno-1 WHERE orderno > 2
    IF @@ERROR <> 0 ROLLBACK TRANSACTION
    COMMIT TRANSACTIONSELECT * FROM @test
    /*
    kkey       orderno     
    ---------- ----------- 
    1-1_       1
    1-2_       2
    */