Se actualizează sql server. Actualizarea bazelor de date Microsoft SQL Server. Actualizarea valorilor în câmpurile cu mai multe rânduri

Acest articol descrie informațiile de care aveți nevoie pentru a urmări actualizările pentru Microsoft SQL Server.
Înainte de a face upgrade, trebuie să aflați ce versiune este deja instalată. Este necesar un număr exact, inclusiv numărul versiunii. Descris mai detaliat în secțiunea „Întrebări”.

MS SQL Server

MS SQL Server (builduri oficiale)
RTM (fără SP)SP1SP2SP3SP4Notă
SQL Server 2017 14.0.1000.169 - - - - -
SQL Server 2016 13.0.1601.5 13.0.4001.0
(13.1.4001.0)
13.0.5026.0
(13.2.5026.0)
- -
SQL Server 2014 12.0.2000.8 12.0.4100.1
(12.1.4100.1)
12.0.5000.0
(12.2.5000.0)
- - Când lucrați cu replicare, este recomandat SP1 sau mai mare.
SQL Server 2012 11.0.2100.60 11.0.3000.0
(11.1.3000.0)
11.0.5058.0
(11.2.5058.0)
11.0.6020.0
(11.3.6020.0)
11.0.7001.0
(11.4.7001.0)
SQL Server 2008 R2 10.50.1600.1 10.50.2500.0
(10.51.2500.0)
10.50.4000.0
(10.52.4000.0)
10.50.6000.34
(10.53.6000.34)
- Când lucrați cu replicare, este recomandat SP2 sau mai mare.
SQL Server 2008 10.0.1600.22 10.0.2531.0
(10.1.2531.0)
10.0.4000.0
(10.2.4000.0)
10.0.5500.0
(10.3.5500.0)
10.0.6000.29
(10.4.6000.29)
Când lucrați cu replicare, se recomandă SP3 sau o versiune superioară.
SQL Server 2005 9.0.1399.06 9.0.2047 9.0.3042 9.0.4035 9.0.5000 Când lucrați cu replicare, se recomandă SP4.

Întrebări

Î: Cum se determină versiunea?
R: Pentru a determina exact ce versiune aveți, rulați cererea SELECTAȚI @@VERSIUNEA.

Î: Va funcționa upgrade-ul de la Express la Standard sau invers?
R: Actualizările sunt universale și se aplică tuturor edițiilor unei anumite versiuni de server.

Î: Cum se instalează actualizările?
A: Doar ultimul. De exemplu, pentru SQL 2014: 12.0.2000.8 => 12.0.5000.0. Cel mai recent SP din listă conține pachete de servicii anterioare

Î: Va fi distrusă baza?
Oh nu. Însă absența unui backup nu îl face pe specialistul în automatizări un specialist!

Î: Ce se întâmplă cu replicarea?
A: Nimic special. Principiul actualizării: mai întâi serverul central, apoi abonații. Schimbul trebuie să fie finalizat pentru toți abonații în acest moment. În cazul funcționării non-stop, este necesar să vă asigurați că lucrarea este comutată pe un alt PC (de exemplu, la un editor sau un abonat de rezervă).

Î: Cât timp durează instalarea actualizărilor?
R: Timpul de instalare variază în funcție de versiune. În medie, procedura de actualizare durează de la 10 la 30 de minute, poate mai mult.

Î: Este posibil să lucrați cu baza de date în acest moment?
A: Absolut nu.

Câteva resurse utile

  • Documentatie pentru toate produsele;
  • Forumul de asistență tehnică Microinvest, unde puteți obține rapid un răspuns la întrebarea dvs.;
  • Exemple de automatizare a restaurantelor și comerțului bazat pe Microinvest în Rusia și țările CSI;
  • Programul cursurilor viitoare în Rusia și țările CSI;

În acest articol voi vorbi despre procesul de actualizare a bazelor de date Microsoft SQL Server și voi oferi un produs software care poate fi folosit în interacțiunea dintre client și antreprenor.

În primul rând, de ce este necesar acest lucru?

Compania noastră este angajată în dezvoltarea de software și în majoritatea cazurilor folosim Microsoft SQL Server ca SGBD. Pentru a fi concret, vom numi compania de dezvoltare „ interpret", iar compania client - " client».

În procesul de modificare a bazei de date, programatorii dezvoltatorului creează un set de scripturi create manual sau în software specializat.

Ulterior, apar următoarele probleme:

  1. din partea executorului, verificați execuția unui set de scripturi în baza de date de testare;
  2. din partea clientului, executați scripturi în baza de date de lucru a clientului;
Să presupunem că atât un programator, cât și un tester pot verifica execuția scripturilor într-o bază de date de testare folosind Microsoft SQL Server Managerment Studio (SSMS). Dar este imposibil să forțați clientul să efectueze aceste operațiuni în SSMS, deoarece:
  • este posibil să nu aibă instalat deloc SSMS;
  • este posibil ca clientul să nu aibă cunoștințe despre lucrul cu baza de date. Și, în general, nu ar trebui;
  • dacă apar erori la executarea scripturilor, clientului îi va fi dificil să le asambleze pentru a le trimite dezvoltatorilor;

Cum rezolvăm această problemă?

Am dezvoltat un produs software „Database Update Manager”, care constă din două programe:
  • program pentru pregătirea unui pachet de actualizare;
  • program pentru executarea pachetului de actualizare;
Program pentru pregătirea actualizării
Programul este folosit de executant. Programatorii îl folosesc pentru a crea un set de scripturi într-un singur fișier.

Dintre caracteristicile acestui program, pot fi remarcate două puncte:

  • informații despre structura bazei de date de referință pot fi adăugate la pachetul de actualizare generat. Dacă astfel de informații sunt prezente în pachet, atunci clientul, după finalizarea actualizării, poate compara structura bazei sale de date cu cea de referință;
  • Pentru client, programul de execuție a actualizării este transferat sub forma unui singur fișier EXE, în care sunt încorporate scripturi și structura bazei de date de referință.
Program pentru efectuarea actualizării
După cum sa menționat deja, programul este lansat folosind un singur fișier EXE. În cele mai multe cazuri, utilizatorul trebuie doar să introducă informații de înregistrare (apropo, aceste valori pot fi incluse în pachetul de actualizare) și să facă clic pe „Următorul” peste tot.

Al doilea ecran este actualizat. După aceasta, puteți compara structura bazei de date de referință încorporate în pachet și cea actuală (pe care a fost efectuată actualizarea).

Analiza discrepanțelor din structură se realizează în interfața grafică a programului de actualizare.

Din păcate, programatorii contractorului văd discrepanțe într-un fișier jurnal text, care este ulterior trimis de client. O abordare interesantă pentru rezolvarea acestei probleme este propusă în articolul Controlul modificărilor în structura bazei de date. Această sarcină nu este atât de critică; programatorii pot scrie ei înșiși un script pentru a aduce structura la țintă.

Pachetul software este distribuit sub un acord de licență Freeware, puteți descărca programul de instalare de pe link

În acest articol vom arăta cum actualizați versiunea de încercare (Ediția de evaluare) sau versiunea Express a SQL Server 2008 R2 la o versiune completă de lucru a SQL Standard sau Enterprise. Este posibil să întâmpinați o problemă similară atunci când instalați o versiune de încercare a SQL Server pentru a testa/dezvolta un anumit produs software. Se întâmplă adesea ca după încheierea unei astfel de teste/încheierea perioadei de evaluare să se ia decizia de a transfera sistemul în operațiune de producție, pentru care este necesar să treci la o ediție cu funcții complete a SQL Server, dar faci nu doresc să reinstaleze SGBD.

Notă. Instrucțiunile se aplică și pentru Microsoft SQL Server 2012 și R2.

Perioada de probă SQL Server SQL 2008 R2 (și versiunile mai noi) este – 180 de zile. După încheierea perioadei de probă, serviciul SQL Server nu va mai porni. În cazul SQL Server Express, există o limitare a dimensiunilor bazei de date.

Puteți să vă actualizați doar licența de licență fără a fi nevoie să reinstalați SQL Server de la o ediție junior la o ediție superioară, de exemplu: Evaluation Edition / Express Edition cu Advanced Services -> Standard sau direct la Enterprise.

După încheierea perioadei de testare, când încercați să deschideți SQL Server Management Studio, apare o fereastră de eroare:

Perioada de evaluare a expirat. Pentru informații despre cum să actualizați software-ul de evaluare, vă rugăm să accesați http://www.microsoft.com/sql/howtobuy

Actualizare ediția MS SQL Server 2008 R2

În prima parte, ne vom da seama cum să actualizăm versiunea de SQL Server folosind o cheie de licență achiziționată de la Microsoft sau de la parteneri.

Să lansăm Centrul de instalare SQL (Start -> Toate programele -> Microsoft SQL Server 2008 R2 -> Instrumente de configurare -> Centrul de instalare SQL Server (64 de biți)).

Sfat. Aceeași fereastră poate fi deschisă rulând setup.exe de pe discul de instalare SQL Server

Să mergem la secțiunea de service ( întreținere) și selectați elementul EdițieActualizare(Actualizare editorială). Se va lansa Expertul de actualizare a ediției.

Și, urmând instrucțiunile vrăjitorului, introduceți cheia de licență SQL Server în câmpul corespunzător.

Apoi trebuie să selectați ce copie (instanță) a SQL Server doriți să actualizați.

Raportul final va indica starea actualizării versiunii și un link către un jurnal text detaliat.

Puteți verifica ce ediție de SQL Server utilizați SQL Server Management Studio făcând clic dreapta pe numele instanței. În exemplul nostru, acesta este SQL Server Enterprise.

Aceeași operațiune poate fi efectuată din linia de comandă prin rularea fișierului setup.exe de pe discul de distribuție SQL Server cu parametrii specificați.

Setup.exe /Q /ACTION=edițieupgrade /INSTANCENAME= /PID=xxxxx-xxxxx-xxxxx-xxxxx-xxxxx /IAcceptSQLServerLicenseTerms /Indicateprogress

Sfat. Când faceți upgrade de la SQL Server Express, trebuie să activați și serviciul Agent SQL Server și să utilizați Managerul de configurare SQL Server pentru a seta setările contului de serviciu pentru serviciul Agent SQL Server.

Faceți upgrade la versiunea corporativă Enterprise a SQL Server (licență de volum)

Dacă doriți să actualizați versiunea actuală a SQL Server în cadrul programului Microsoft Volume Licensing, veți fi surprins că Microsoft Volume Licensing Service Center (MS VLSC) nu are chei pentru SQL Server.

Faptul este că cheia este integrată direct în distribuție. Cel mai interesant lucru este că suportul VLSC recomandă dezinstalarea serverului SQL instalat și reinstalarea acestuia folosind fișierul iso cu distribuția SQL descărcată de pe VLSC.

Din fericire, este încă posibil să obțineți cheia corectă direct din distribuție


Actualizarea datelor dintr-o bază de date înseamnă modificarea valorilor din înregistrările de tabel existente. În acest caz, este posibil să modificați atât valorile câmpurilor dintr-un grup de rânduri (chiar și toate rândurile tabelului), cât și să editați valoarea unui câmp într-un rând individual.

În SQL, puteți modifica o înregistrare într-un tabel de bază de date folosind comanda UPDATE. În forma sa cea mai minimă, comanda de actualizare a datelor arată astfel:

ACTUALIZAȚI câmp SET tabel = valoare

Aici, ACTUALIZAȚI– o comandă care indică faptul că cererea este de actualizare a datelor;

masa– denumirea tabelului în care se vor face modificări;

A STABILIT– o comandă urmată de câmpuri separate prin virgulă cu valori atribuite;

camp– câmp tabel la care se va face modificarea;

sens– o nouă valoare care va fi introdusă în câmp.


De exemplu, dacă trebuie să setați un câmp din toate rândurile unui tabel la zero, puteți rula următoarea interogare:

ACTUALIZAȚI preț SET bunuri = 0

În acest caz, câmpul preț din absolut toate rândurile disponibile ale tabelului va lua valoarea 0.

Schimbarea unei valori

Modificarea valorilor tuturor câmpurilor dintr-un tabel este extrem de rară. Cel mai adesea este necesar să se schimbe valoarea unei anumite intrări. Pentru a face acest lucru, la sfârșitul liniei cu comanda UPDATE, va fi adăugată o directivă WHERE, care specifică o condiție care determină pe ce linie trebuie efectuată operația de actualizare.

Acolo este o masa:

De exemplu, trebuie să actualizăm costul unui produs cu valoarea lui cunoscută num. Pentru a face acest lucru, rulați următoarea interogare:

ACTUALIZAȚI mărfuri SET preț = 150 WHERE num = 2

Acum, înainte de operația de schimbare a câmpurilor, va fi selectat un rând care îndeplinește condiția num = 2. Există doar un astfel de rând în tabel. În acest stoc prețul va fi modificat la valoarea 150. Ca urmare, vom obține un tabel cu prețul modificat al produsului.

Efectuarea de modificări la mai multe linii cu o condiție de selecție

Dacă vă amintiți toată varietatea de condiții din interogare, vă puteți imagina cât de diverse pot fi mostrele. Prin urmare, interogările de actualizare pot fi executate fie cu un rând, fie cu un grup de rânduri, fie cu toate rândurile tabelului. Totul depinde de sarcina cu care vă confruntați, precum și de rândurile de tabel pe care trebuie să efectuați operațiuni de actualizare.

De exemplu, dorim să reducem la jumătate prețul tuturor bunurilor care costă în prezent 100 sau mai mult. Cerere:

ACTUALIZAȚI mărfuri SET preț = preț / 2 WHERE preț >= 100

Condiție UNDE aici conține o regulă conform căreia vor fi selectate doar produsele cu preț egal sau mai mare de 100, iar acele produse cu preț sub 100 nu vor fi afectate de cerere.

preț = preț / 2– formula prin care se va calcula noul preț al mărfurilor. Noul preț va fi scris egal cu vechiul preț împărțit la doi.

Ca urmare a executării unei astfel de interogări, vom obține un tabel cu înregistrările modificate:

Actualizarea valorilor în câmpurile cu mai multe rânduri

Dacă este necesară actualizarea mai multor câmpuri simultan, toate câmpurile cu valorile lor sunt indicate după directiva SET, separate prin virgulă. De exemplu, trebuie să schimbați numele și prețul unui produs cu codul 2 în „fier”, care costă 300:

ACTUALIZAȚI bunuri SET titlu = "fier" , price = 300 WHERE num = 2 !}

Această interogare va atribui fiecărui câmp de potrivire dintr-un rând valoarea sa. Iar condiția va indica în ce linie vor fi făcute modificările.


Următoarele sunt principalele tipuri de operațiuni de actualizare. Pe baza acestora, sunt generate interogări pentru a rezolva majoritatea problemelor de modificare a datelor în dezvoltare folosind SQL.

Microsoft® SQL Server 2005 - Express Edition este gratuit și vine cu software-ul Parsec 2.5 și 3. Stochează toate datele de sistem. Limitarea acestui produs este dimensiunea bazei de date de 4 gigaocteți. După atingerea acestui prag, datele noi nu mai sunt înregistrate în sistem, ceea ce duce la pierderea relevanței informațiilor stocate. Pentru a rezolva această problemă, trebuie să faceți upgrade la o versiune premium plătită a SQL Server (nu are restricții privind dimensiunea bazei de date) sau să faceți upgrade la Microsoft SQL Server 2008 R2 SP2 Express. SQL Server 2008 R2 SP2 Express este o bază de date gratuită cu o limită de dimensiune a bazei de date de 10 gigaocteți.

1. Mai întâi, trebuie să descărcați Microsoft® SQL Server® 2008 R2 SP2 - Express Edition de pe www.microsoft.com, urmând linkul: http://www.microsoft.com/en-US/download/details.aspx? id= 30438 dimensiune fișier 110,4 MB

IMPORTANT: Pentru a actualiza, aveți nevoie de o versiune în engleză pe 32 de biți!

2. Pe Windows XP, Vista, 2003, 2008, procesul de instalare poate necesita platforma software NET.Framework 3.5 SP1. Puteți descărca urmând linkul http://www.microsoft.com/ru-ru/Download/details.aspx?id=22 (Descărcați această platformă înainte de a actualiza SQL Server)
Pe Windows 7, 2008 R2 Server, 8, 8.1, 2012 și 2012 R2 Server, .NET Framework 3.5 este o caracteristică Windows și este instalată prin Panou de control\Toate elementele panoului de control\Programe și caracteristici „Activați sau dezactivați funcțiile Windows”

3. Rulați fișierul descărcat.

4. Așteptați până când pachetul de instalare este extras și începe instalarea.

5. În dialogul de instalare care se deschide, trebuie să selectați elementul de meniu „Upgrade from SQL 2000, SQL Server 2005 sau SQL Server 2008 Lansați un expert pentru a actualiza SQL 2000, SQL Server 2005 sau SQL Server 2008 la SQL Server 2008 R2”

6. În fereastra următoare trebuie să Acceptați termenii acordului de licență - „Accept termenii licenței”.

7. În fereastra de instalare „Selectare instanță”, trebuie să selectați baza de date pe care intenționați să o actualizați. „Instanță de upgrade” (PARSEC3 - pentru ParsecNET 3, PARSECDB - pentru ParsecNET 2.5)

8. Așteptați noua fereastră de instalare „Raportare erori”; nu trebuie să bifați caseta de selectare sugerată în acest meniu.

9. În fereastra „Upgrade Roles”, faceți clic pe „Afișați detalii”, se va deschide o fereastră în care puteți vedea procesul de instalare a componentelor și puteți vedea și erorile dacă apar brusc.

10. Așteptați până când procesul de instalare și actualizare a componentelor serverului SQL este finalizat - la sfârșit va apărea un mesaj că actualizarea a avut succes - „Actualizarea dvs. SQL Server a fost finalizată cu succes”.

11. Puteți închide fereastra de instalare „Închidere” și puteți ieși folosind crucea. Ați actualizat SQL Server 2005 Express la MS SQL Server 2008 R2 Express SP2 EN.