Jak włączyć i wyłączyć IDENTITY INSERT za pomocą SQL Server 2008?
Dlaczego dostaję błąd podczas wstawiania, gdy IDENTITY_INSERT
jest ustawione na OFF?
Jak włączyć go poprawnie w SQL Server 2008? Czy za pomocą SQL Server Management Studio?
Uruchomiłem to zapytanie:
SET IDENTITY_INSERT Database. dbo. Baskets ON
Potem dostałem wiadomość z konsoli, że polecenia zostały pomyślnie zakończone. Jednak gdy uruchamiam aplikację, nadal wyświetla mi błąd pokazany poniżej:
Cannot insert explicit value for identity column in table 'Baskets' when
IDENTITY_INSERT is set to OFF.
7 answers
Poprzez SQL zgodnie z MSDN
SET IDENTITY_INSERT sometableWithIdentity ON
INSERT sometableWithIdentity (IdentityColumn, col2, col3, ...)
VALUES (AnIdentityValue, col2value, col3value, ...)
SET IDENTITY_INSERT sometableWithIdentity OFF
Kompletny komunikat o błędzie mówi ci dokładnie co jest nie tak...
Nie można wstawić jawnej wartości kolumny identity w tabeli 'sometableWithIdentity', gdy IDENTITY_INSERT jest ustawione na OFF.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-04 16:06:16
Miałem problem, w którym nie pozwalał mi wstawić go nawet po ustawieniu IDENTITI_INSERT na.
Problem polegał na tym, że nie podałem nazw kolumn i z jakiegoś powodu mu się to nie podobało.
INSERT INTO tbl Values(vals)
Więc w zasadzie zrobić pełny INSERT do wartości TBL (cols) (vals)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-02-08 14:56:38
Import:
Musisz pisać kolumny w INSERT
statement
INSERT INTO TABLE
SELECT * FROM
Nie jest poprawna.
Insert into Table(Field1,...)
Select (Field1,...) from TABLE
Jest poprawne
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-04-22 09:58:46
Wiem, że to starszy wątek, ale wpadłem na to. Jeśli użytkownik próbuje uruchomić wstawki w kolumnie Identity po innej sesji ustawionej na IDENTITY_INSERT, to musi uzyskać powyższy błąd.
Ustawianie wartości Identity Insert i kolejnych poleceń Insert DML ma być uruchamiane przez tę samą sesję.
Tutaj @ początkujący ustawiał Identity Insert osobno, a następnie uruchamiał wstawki ze swojej aplikacji. Dlatego dostał poniżej Błąd:
Cannot insert explicit value for identity column in table 'Baskets' when
IDENTITY_INSERT is set to OFF.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-04-22 07:35:08
Jest to prawdopodobne, gdy masz pole klucza podstawowego i wstawiasz wartość, która się duplikuje lub masz ustawioną flagę INSERT_IDENTITY na on
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-11-20 14:46:50
Wygląda na to, że nie można umieścić zbioru danych IDENTITI_INSERT. dbo. Kosze na; Przed każdym SQL INSERT wysyłanie partii. / Możesz wysłać kilka wstawek ... Wartości .. polecenia zaczynały się od jednego zestawu IDENTITY_INSERT ... ON; string na początku. Tylko nie umieszczaj separatora wsadowego między/ Nie wiem dlaczego zestaw IDENTITY_INSERT ... Na przestaje działać, po bloku wysyłania (np.: .ExecuteNonQuery () w c#)... Musiałem ustawić IDENTITY_INSERT ... Włącz; ponownie na początku następnego polecenia SQL sznurek.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-08 20:08:34
Musisz dodać polecenie " go " po ustawieniu insert tożsamości. Przykład:
SET IDENTITY_INSERT sometableWithIdentity ON
go
INSERT sometableWithIdentity (IdentityColumn, col2, col3, ...)
VALUES (AnIdentityValue, col2value, col3value, ...)
SET IDENTITY_INSERT sometableWithIdentity OFF
go
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-04-03 06:48:36