2016-04-08 20 views
0

私はちょうど私が使用し、学生のシリアル番号をカウントフィールドSerial_Noを持ってのSQLServerを設定シリアル番号の自動インクリメントとデクリメント

アイデンティティ(1,1)

しかし、問題は、私は、行/列をそれない削除した場合Nouman 40

3エサン50

Serial_No名マーク

1のようSerial_Noを減少

9 ejaz 56

10アリ30

11 Saleemの78

15アブドラ90

.... ..... ....

.. 。.. .....

私はSerial_No自動インクリメントが必要ですが、削除して行を挿入した後に更新する

1,2,3,4,5,6,7,8,9,10,11 ..........

+0

このMySQLまたはSQL Serverですか? – dfundako

答えて

0

のように、SQL Serverの回答は両方ともタグ付けされています役職。アイデンティティ列だけを残しておきたいと思います。それが設計されている方法を実行しましょう。代わりに、すべての列を選択するビューを作成し、探している順次リストを生成するためのウィンドウ関数(row_number)も含めます。

CREATE VIEW view_YourTable AS (
select * 
, ROW_NUMBER() OVER(order by serial_no) AS sequential_id 
FROM your_table); 

SELECT * 
FROM view_YourTable 
関連する問題