SQL Server CompactでテーブルのID列のID値をリセットする方法

 SQL ServerでテーブルのID列のID値をリセットするには、以下のようにDBCC CHECKIDENTコマンドを使います。


DBCC CHECKIDENT ( table_name );


 上記のコマンドを実行した場合、テーブルのID値がID列の最大値にリセットされます。つまり、もしレコードが0件であればID値は1に設定されます。

DBCC CHECKIDENT (Transact-SQL) | Microsoft Docs



 しかしながら、SQL Server CompactではDBCC CHECKIDENTコマンドがサポートされていません。SQL Server Compactでは、ALTER TABLEステートメントを使ってID値をリセットします。レコードが0件でID値を1に設定する場合のステートメントは以下のようになります。


ALTER TABLE table_name ALTER COLUMN column_name IDENTITY(1,1);


 なお、SQL Server Management Studioは、最新版の2008 R2でもSQL Server Compact 4.0をサポートしていません。これらのTransact-SQLの実行にはVisual Studio 2010 SP1のTransact-SQLエディターを使います。

SQL Server Compact 4.0 でサポートされていない機能


Starting from SQL Server Compact 4.0, SQL Server Compact does not support SQL Server Management Studio. The Transact-SQL Editor in the Visual Studio 2010 Service Pack 1 can be used to run T-SQL queries and to view the estimated and the actual query plans for a T-SQL query for the SQL Server Compact database.


This topic is no longer available