0

次の一連のレコードを持つテーブルがあります。

Sno Unique  Something
1      1    some data
1      2
1      3
1      4
2      1
2      2
2      3

sno と unique_no を主キーとして、unique_no を自動インクリメント フィールドとして設定することで、これを達成しました。問題は、sno 1 のフィールドと値 1,2,3 を持つ一意のフィールドを削除し、sno を 1 として他のデータを挿入すると、次のようなテーブルになります。

   Sno Unique  Something
    1      5   new data
    1      6   new data
    1      4   somedata
    2      1
    2      2
    2      3

しかし、最小値を取り、それをインクリメントし始め、ユニークな値を変更して、ジャンプがないようにするものが必要です。これを達成することは可能ですか?

    Sno Unique  Something
    1      1   new data
    1      2   new data
    1      3   somedata
    2      1
    2      2
    2      3
4

1 に答える 1

0

Unique_NO最も簡単な答えは、 がAUTO_INCREMENTフィールドの場合、最後に挿入された値をもう 1 つ生成するため (既に削除されていても) 、やりたいことができないということです。

できる最善の方法は、アプリケーション層に を生成するロジックを作成することですUnique_No

于 2012-10-20T12:58:01.610 に答える