2017-04-04 12 views
0

私は現在のコードと前のコードを含む各行に一意のIDを割り当てます。それは正常に動作しているようだが、私の質問は、私は新しいコードで更新されたファイルを持っている場合、どのように私はそれを中止されたからユニークなIDを再開する?例えば既存のテーブルに一意の行IDを追加する

、どのように私は、これらの追加の行を追加する場合は、以下のIDは黄色で強調表示移入しますか?

Example

CREATE PROCEDURE [dbo].[PI_Key_Create_Update] AS 
BEGIN 
Truncate Table RB_PI_Key_Assign 
Truncate Table RB_PI_Key_Link 

INSERT INTO RB_PI_Key_Assign 
SELECT 
ROW_NUMBER() OVER (ORDER BY RB_Code_L) AS PI_Key 
, RB_Code_L 
, RB_Code_L_P 
FROM Stage_RB_Previous 

INSERT INTO RB_PI_Key_Link 
SELECT 
    a.PI_Key 
, b.PI_Key as PI_KEY_P 
, a.RB_Code_L 
, a.RB_Code_L_P 

FROM RB_PI_Key_Assign a LEFT JOIN RB_PI_Key_Assign b ON (a.RB_Code_L_P=b.RB_Code_L) 

END 

おかげ

+0

あなたのidフィールドにIDが設定されていないので、手動でIDフィールドを管理する必要はありません。 – maSTAShuFu

答えて

0

何よりもまず、列のこのタイプは、アイデンティティが播種または自動インクリメントする必要があります。あなたはそれらを維持する必要はありません。

あなたがそれらを手動ですべての理由もなく更新されている場合は特別なことは何もありません。

+0

ありがとうmaSTA。私は一意のIDがその人生の行にとどまることを望みます。テーブルを更新しても行の順序が違うと、IDが変更されますか? – Myx

+0

IDは変更されません。このフィールドの動作を変更すると、IDは自動的に増加します。テーブルを切り捨てると、1にリセットされます。それにきれいなスレートの切り捨てテーブルを与え、あなたのシーケンスに従って行を挿入するには – maSTAShuFu

関連する問題