17

列のIDシードをリセットするために、次のことを試しました。

DBCC CHECKIDENT ('dbo.Stuff', RESEED, 0)

これはsqlazureでは機能しません。これを行うための最善の方法は何でしょうか。テーブルを削除して再作成しますか?

4

3 に答える 3

12

@haldyrの答えは、正しいとしておそらく不当に削除されたと思います。

SQL Azure (v12) の最新バージョンはサポートしていますがDBCC CHECKIDENT(およびその他多数)、Azureデータベース サーバーが新しくない場合は、アップグレードする必要があります。

アップグレードは簡単です。新しいポータル (DB 自体ではなく実際のサーバー) で Azure DB サーバーに移動し、大きなLatest Updateボタンをクリックします。

ここに画像の説明を入力

注:アップグレードには多くの注意事項があることに注意してください (古いものではサポートされていないなど)。記事http://azure.microsoft.com/en-us/documentation/articles/sql-を読む価値があります。 database-preview-whats-new/#V12AzureSqlDbPreviewGaTable

于 2015-03-29T23:22:10.367 に答える
6

ご覧のとおり、DBCC CHECKIDENT は現在 Windows Azure SQL Database ではサポートされていません。ID を再シードする最も完全な方法は、同じ構造の新しいテーブルを作成し、ID を再シード値 IDENTITY(reseedval,1) に設定し、SET IDENTITY_INSERT tablename ON を使用して元のテーブルから既存のレコードをロードし、ドロップすることです。古いテーブルの名前を変更し、新しいテーブルの名前を変更します。権限のリセット、制約のリセットなど。

于 2012-12-06T19:52:26.217 に答える