Do tabeli chciałem dzisiaj wstawić kilka rekordów ‚za jednym zamachem’. Można to zrobić poprzez polecenie:
INSERT Countries VALUES(‚EN’, ‚England’,1),
(‚PL’, ‚Poland’,1),
(‚G’,’Germany’,1),
(‚CDN’,’Canada’,2),
(‚USA’,’USA’,2)
Tymczasem pojawia się błąd:
Msg 102, Level 15, State 1, Line 2 Incorrect syntax near ‚,’.Błędu nie widzę, albo jestem ślepy ale przepisanie polecenia na pojedyncze INSERT pomogło.
Idziemy dalej. Deklaruje sobie zmienną i od razu ją inicjuję:
DECLARE @CSV VARCHAR(1000) = ”;Znowu bład:
Msg 139, Level 15, State 1, Line 0 Cannot assign a default value to a local variable.Przecież setki razy tak robiłem i działało. Czy mój komputer dzisiaj się buntuje!? Oczywiście przepisanie na 2 linijki pomogło. Można by o sprawie zapomnieć, ale przecież nie może to dać spokoju.
Cóż obie funkcje, których tu użyłem to nowości w SQL 2008. Może wobec tego po prostu podłączyłem się do innego serwera!?
Polecenie
SELECT @@VERSIONzwróciło odpowiedź twierdzącą:
1 |
Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86) |
1 |
Oct 14 2005 00:33:37 |
1 |
Copyright (c) 1988-2005 Microsoft Corporation |
1 |
Developer Edition on Windows NT 6.1 (Build 7600: ) |
No to wszystko jasne. Podłączyłem się do serwra w wersji 2005 zamiast 2008.