Aktualizowanie baz danych Microsoft SQL Server. Zapytania SQL w celu aktualizacji danych (AKTUALIZACJA) Aktualizacja serwera sql

W tym artykule pokażemy, jak to zrobić uaktualnij wersję próbną (Evaluation Edition) lub Express programu SQL Server 2008 R2 do pełnej działającej wersji SQL Standard lub Enterprise. Podobny problem możesz napotkać podczas instalowania wersji próbnej programu SQL Server w celu testowania/rozwoju określonego oprogramowania. Często zdarza się, że po zakończeniu takich testów/zakończeniu okresu ewaluacyjnego zostaje podjęta decyzja o przeniesieniu systemu do pracy produkcyjnej, do której konieczne jest przejście na w pełni funkcjonalną edycję SQL Server, ale nie nie chcę ponownie instalować systemu DBMS.

Notatka. Instrukcje dotyczą także Microsoft SQL Server 2012 i R2.

Okres próbny SQL Server SQL 2008 R2 (i nowszych wersji) to – 180 dni. Po zakończeniu okresu próbnego usługa SQL Server nie będzie już uruchamiana. W przypadku SQL Server Express istnieje ograniczenie rozmiaru bazy danych.

Możesz jedynie uaktualnić swoją licencję licencyjną bez konieczności ponownej instalacji SQL Server z wersji junior do wersji wyższej, na przykład: Edition Evaluation Edition / Express Edition z usługami zaawansowanymi -> Standard lub bezpośrednio do wersji Enterprise.

Po zakończeniu okresu testowego przy próbie otwarcia SQL Server Management Studio pojawia się okno błędu:

Upłynął okres oceny. Informacje na temat aktualizacji oprogramowania ewaluacyjnego można znaleźć na stronie http://www.microsoft.com/sql/howtobuy

Aktualizacja wersji MS SQL Server 2008 R2

W pierwszej części dowiemy się jak zaktualizować wersję SQL Server za pomocą klucza licencyjnego zakupionego od Microsoftu lub partnerów.

Uruchommy Centrum instalacji SQL (Start -> Wszystkie programy -> Microsoft SQL Server 2008 R2 -> Narzędzia konfiguracyjne -> Centrum instalacji SQL Server (64-bit)).

Rada. To samo okno można otworzyć uruchamiając plik setup.exe z dysku instalacyjnego SQL Server

Przejdźmy do sekcji serwisowej ( Konserwacja) i wybierz element WydanieAktualizacja(Aktualizacja redakcyjna). Uruchomi się Kreator aktualizacji wersji.

I postępując zgodnie z instrukcjami kreatora, wprowadź klucz licencyjny SQL Server w odpowiednim polu.

Następnie musisz wybrać kopię (instancję) SQL Server, którą chcesz zaktualizować.

Raport końcowy będzie wskazywał status aktualizacji wersji i link do szczegółowego dziennika tekstowego.

Możesz sprawdzić, z której wersji SQL Server korzystasz Studio zarządzania serwerem SQL klikając prawym przyciskiem myszy nazwę instancji. W naszym przykładzie jest to SQL Server Enterprise.

Tę samą operację można wykonać z wiersza poleceń, uruchamiając plik setup.exe z dysku dystrybucyjnego SQL Server z określonymi parametrami.

Setup.exe /Q /ACTION=aktualizacja wersji /NAZWA_INSTANCJI= /PID=xxxxx-xxxxx-xxxxx-xxxxx-xxxxx /IAcceptSQLServerLicenseTerms /Indicateprogress

Rada. Podczas aktualizacji z SQL Server Express należy także włączyć usługę SQL Server Agent i użyć SQL Server Configuration Manager, aby ustawić ustawienia konta usługi dla usługi SQL Server Agent.

Uaktualnij do korporacyjnej wersji Enterprise programu SQL Server (licencja zbiorcza)

Jeśli chcesz zaktualizować swoją obecną wersję SQL Server w ramach programu licencjonowania zbiorowego Microsoft, będziesz zaskoczony, że Centrum obsługi licencjonowania zbiorowego Microsoft (MS VLSC) nie ma kluczy do SQL Server.

Faktem jest, że klucz jest zintegrowany bezpośrednio z dystrybucją. Najciekawsze jest to, że obsługa VLSC zaleca odinstalowanie zainstalowanego SQL Servera i ponowną instalację go przy użyciu pliku iso z dystrybucją SQL pobraną z VLSC.

Na szczęście nadal możliwe jest uzyskanie prawidłowego klucza bezpośrednio z dystrybucji


Microsoft® SQL Server 2005 - Express Edition jest darmowy i zawiera oprogramowanie Parsec 2.5 i 3. Przechowuje wszystkie dane systemowe. Ograniczeniem tego produktu jest rozmiar bazy danych wynoszący 4 gigabajty. Po osiągnięciu tego progu nowe dane przestają być rejestrowane w systemie, co prowadzi do utraty aktualności przechowywanych informacji. Aby rozwiązać ten problem, należy dokonać aktualizacji do płatnej wersji premium programu SQL Server (nie ma ona ograniczeń co do rozmiaru bazy danych) lub dokonać aktualizacji do wersji Microsoft SQL Server 2008 R2 SP2 Express. SQL Server 2008 R2 SP2 Express to bezpłatna baza danych z limitem rozmiaru bazy danych wynoszącym 10 gigabajtów.

1. Najpierw musisz pobrać Microsoft® SQL Server® 2008 R2 SP2 - Express Edition ze strony www.microsoft.com, klikając łącze: http://www.microsoft.com/en-US/download/details.aspx? id= 30438 rozmiar pliku 110,4 MB

WAŻNY: Do aktualizacji potrzebna jest 32-bitowa wersja angielska!

2. W systemach Windows XP, Vista, 2003, 2008 proces instalacji może wymagać platformy oprogramowania NET.Framework 3.5 SP1. Możesz pobrać, klikając link http://www.microsoft.com/ru-ru/Download/details.aspx?id=22 (Pobierz tę platformę przed aktualizacją SQL Server)
W systemach Windows 7, 2008 R2 Server, 8, 8.1, 2012 i 2012 R2 Server .NET Framework 3.5 jest funkcją systemu Windows i można ją zainstalować za pomocą Panelu sterowania\Wszystkie elementy Panelu sterowania\Programy i funkcje „Włącz lub wyłącz funkcje systemu Windows”

3. Uruchom pobrany plik.

4. Poczekaj, aż pakiet instalacyjny zostanie wyodrębniony i rozpocznie się instalacja.

5. W otwartym oknie dialogowym instalacji wybierz punkt menu „Uaktualnij z SQL 2000, SQL Server 2005 lub SQL Server 2008 Uruchom kreator, aby zaktualizować SQL 2000, SQL Server 2005 lub SQL Server 2008 do SQL Server 2008 R2”

6. W kolejnym oknie należy zaakceptować warunki umowy licencyjnej - „Akceptuję warunki licencji”.

7. W oknie instalacji „Wybierz instancję” należy wybrać bazę danych, którą zamierzamy zaktualizować. „Instancja do aktualizacji” (PARSEC3 – dla ParsecNET 3, PARSECDB – dla ParsecNET 2.5)

8. Poczekaj na pojawienie się nowego okna instalacyjnego „Raportowanie błędów”, nie musisz zaznaczać sugerowanego checkboxa w tym menu.

9. W oknie „Uaktualnij role” kliknij „Pokaż szczegóły”, otworzy się okno, w którym możesz zobaczyć proces instalacji komponentów, a także błędy, jeśli nagle się pojawią.

10. Poczekaj aż proces instalacji i aktualizacji komponentów SQL Server zakończy się - na koniec pojawi się komunikat, że aktualizacja przebiegła pomyślnie - „Twoja aktualizacja SQL Server zakończona pomyślnie”.

11. Możesz zamknąć okno instalacji „Zamknij” i wyjść za pomocą krzyżyka. Zaktualizowałeś SQL Server 2005 Express do MS SQL Server 2008 R2 Express SP2 EN.

Aktualizacja danych w bazie danych oznacza zmianę wartości w istniejących rekordach tabeli. W tym przypadku możliwa jest zarówno zmiana wartości pól w grupie wierszy (nawet wszystkich wierszy tabeli), jak i edycja wartości pola w pojedynczym wierszu.

W języku SQL można zmienić rekord w tabeli bazy danych za pomocą polecenia UPDATE. W najbardziej minimalnej formie polecenie aktualizacji danych wygląda następująco:

AKTUALIZACJA pole SET tabeli = wartość

Tutaj, AKTUALIZACJA– polecenie wskazujące, że żądanie dotyczy aktualizacji danych;

tabela– nazwę tabeli, w której zostaną dokonane zmiany;

USTAWIĆ– polecenie, po którym następują pola oddzielone przecinkami z przypisanymi wartościami;

pole– pole tabeli, w którym zostanie dokonana zmiana;

oznaczający– nowa wartość, która zostanie wpisana w pole.


Na przykład, jeśli chcesz ustawić pole we wszystkich wierszach tabeli na zero, możesz uruchomić następujące zapytanie:

AKTUALIZACJA cena zestawu towarów = 0

W takim przypadku pole ceny w absolutnie wszystkich dostępnych wierszach tabeli przyjmie wartość 0.

Zmiana jednej wartości

Zmiana wartości wszystkich pól w tabeli zdarza się niezwykle rzadko. Najczęściej konieczna jest zmiana wartości konkretnego wpisu. W tym celu na końcu linii z poleceniem UPDATE zostanie dodana dyrektywa WHERE, która określa warunek określający, w której linii ma zostać wykonana operacja aktualizacji.

Tam jest stół:

Przykładowo musimy zaktualizować koszt produktu o znaną nam wartość num. Aby to zrobić, uruchom następujące zapytanie:

AKTUALIZACJA towar SET cena = 150 GDZIE num = 2

Teraz przed operacją zmiany pól zostanie wybrany wiersz spełniający warunek num=2. W tabeli znajduje się tylko jeden taki wiersz. W tym magazynie cena zostanie zmieniona na wartość 150. W rezultacie otrzymamy tabelę ze zmienioną ceną produktu.

Wprowadzanie zmian w wielu liniach z warunkiem wyboru

Jeśli pamiętasz całą różnorodność warunków w zapytaniu, możesz sobie wyobrazić, jak różnorodne mogą być próbki. Dlatego zapytania aktualizujące mogą być wykonywane albo z jednym wierszem, albo z grupą wierszy, albo ze wszystkimi wierszami tabeli. Wszystko zależy od zadania, przed którym stoisz, a także od tego, na jakich wierszach tabeli chcesz wykonać operacje aktualizacji.

Na przykład chcemy obniżyć o połowę cenę wszystkich towarów, które obecnie kosztują 100 lub więcej. Wniosek:

AKTUALIZACJA towar SET cena = cena / 2 GDZIE cena >= 100

Stan GDZIE tutaj znajduje się reguła, zgodnie z którą wybrane zostaną tylko produkty z ceną równą lub większą niż 100, przy czym zapytanie nie będzie miało wpływu na produkty z ceną poniżej 100.

cena = cena / 2– wzór, według którego zostanie obliczona nowa cena towaru. Nowa cena zostanie zapisana jako równa starej cenie podzielonej przez dwa.

W wyniku wykonania takiego zapytania otrzymamy tabelę ze zmienionymi rekordami:

Aktualizacja wartości w polach wielowierszowych

W przypadku konieczności aktualizacji kilku pól na raz, wszystkie pola wraz z ich wartościami zostaną wskazane po dyrektywie SET, oddzielone przecinkami. Przykładowo musisz zmienić nazwę i cenę produktu z kodem 2 na „żelazko”, kosztującego 300:

AKTUALIZACJA tytuł ZESTAWU towarów = "iron" , price = 300 WHERE num = 2 !}

To zapytanie przypisze każdemu pasującemu polu w wierszu jego wartość. Warunek wskaże, w którym wierszu zostaną wprowadzone zmiany.


Poniżej przedstawiono główne typy operacji aktualizacji. Na ich podstawie generowane są zapytania, które rozwiązują większość problemów związanych z modyfikacją danych w programowaniu przy użyciu języka SQL.

: Jak poprawnie zaktualizować SQL Server

Co się stanie, jeśli zapytam: „Czy wszystkie aktualizacje są zainstalowane na serwerze SQL Server?”

Jak odpowiedzieć na takie pytanie? Sprawdź usługę Windows Update? To raczej nie pomoże. Najprawdopodobniej zobaczysz coś takiego:

Ale, co dziwne, nie oznacza to, że SQL Server ma zainstalowane najnowsze aktualizacje!

Aby śledzić aktualizacje specjalnie dla serwera SQL, Microsoft utworzył specjalną stronę - . Dodaj do zakładek:

Ale zanim tam pójdziemy, musimy dowiedzieć się, którą wersję teraz zainstalowaliśmy. Potrzebujemy dokładnej liczby, łącznie z numerem kompilacji. Można to uzyskać, patrząc na zmienną systemową @@Wersja:

Zapamiętaj te liczby - tylko dzięki nim będziemy mogli określić, które aktualizacje już zainstalowaliśmy, a które nie. Serwer SQL w odróżnieniu od samego systemu operacyjnego nie informuje nas o każdej zainstalowanej aktualizacji. Dlatego będziesz musiał pracować z liczbą @@Wersja.

Teraz przechodzimy do centrum aktualizacji serwera SQL i widzimy tam wygodny znak:

Tutaj potrzebujemy trzech rzeczy:

  • Na początek zapamiętajmy numer kompilacji odpowiadający tej aktualizacji. Po zakończeniu procedury aktualizacji @@Wersja nasz serwer SQL powinien podać dokładnie tę liczbę.
  • Po drugie, zdecydowanie powinieneś przyjrzeć się historii numerów kompilacji odpowiadających aktualizacjom z najnowszego pakietu usług. Jest to ważne, ponieważ aktualizacja zbiorcza zostanie zainstalowana tylko w dodatku Service Pack, który ją poprzedza.
  • Po trzecie, warto przyjrzeć się liście poprawek zawartych w pakiecie zbiorczym. Administrator musi być świadomy zmian wprowadzonych przez ten pakiet.

Patrząc na numery kompilacji poprzednich aktualizacji, zobaczymy, że różnica w liczbach w porównaniu z naszą obecną wersją jest podejrzanie duża:

Wynika to z faktu, że nie mamy zainstalowanego dodatku SP1. Najpierw musisz go zainstalować.

I już mamy plan działania:

  1. Zainstaluj pakiet usług SP1.
  2. Zainstaluj pakiet aktualizacji zbiorczej CU4.

Działajmy! Po zainstalowaniu dodatku SP1 sprawdź numer @@Wersja. Z pierwotnych 2100,60 wzrosła do 3000,0.