2012-09-13 15 views
15

Próbowałem następujących w celu zresetowania moja tożsamość materiału siewnego kolumny:Jak zresetować nasienie tożsamości w SQL Azure

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

to nie działa w SQL Azure, zastanawiałem się, jaki byłby najlepszy sposób na zrobienie tego. Upuścić i ponownie utworzyć tabelę?

+0

Przyjdź szukać SO SQL Azure Reseed and top hit http://stackoverflow.com/questions/11644507/sql-azure-reset-autoincrement – Paparazzi

Odpowiedz

6

Jak widzieliście, DBCC CHECKIDENT is not currently supported in Windows Azure SQL Database. Najbardziej kompletnym sposobem na ponowne ustalenie tożsamości byłoby utworzenie nowej tabeli o tej samej strukturze i ustawienie tożsamości na wartość Wyczyszczona IDENTYFIKACJA (reseedval, 1), wczytanie istniejących rekordów z oryginalnej tabeli przy użyciu SET IDENTYFIKATOR_INSTALACYJNY NA ON, a następnie upuszczenie stary stół i zmienić nazwę nowego. Zresetuj uprawnienia, zresetuj wiązania itp.

0

Niedawno sam się z tym problemem podjąłem. Rozwiązałem go, wstawiając i usuwając elementy w tabeli, aż osiągnąłem pożądaną wartość początkową.

W poniższym przykładzie będzie to reseedować tabeli użytkowników tak następny nowy element będzie miał identyfikator 3500.

BEGIN TRANSACTION 
GO 

DECLARE @max_id int 

SELECT @max_id = max([Id]) FROM users 

WHILE (@max_id < 3499) 
BEGIN 
    INSERT INTO Users (Username, Password) VALUES ('','') 
    SELECT @max_id = max([Id]) FROM Users 
    DELETE FROM Users WHERE [Id] = @max_id 
END 

COMMIT 

nadzieję, że to pomaga.

9

Myślę, że odpowiedź @ haldyra została prawdopodobnie niesprawiedliwie skasowana jako poprawna.

Najnowsza wersja SQL Azure (v12) DOES obsługuje DBCC CHECKIDENT (and a bunch of others), jednak jeśli twój serwer bazy danych Azure nie jest fabrycznie nowy, będziesz musiał dokonać aktualizacji.

Aktualizacja jest łatwa, przejdź do swojego niebieskiego serwera DB w nowym portalu (aktualny serwer, a nie sama baza danych) i kliknij duży przycisk Latest Update.

enter image description here

UWAGA: Należy pamiętać, istnieje kilka z zastrzeżeniami do modernizacji (jak jakiegoś starszego rzeczy nie obsługuje), więc jej warto przeczytać artykuł http://azure.microsoft.com/en-us/documentation/articles/sql-database-preview-whats-new/#V12AzureSqlDbPreviewGaTable