Mesaj de eroare când încercați să salvați un tabel în SQL Server: "Salvarea modificărilor este interzisă"

Traduceri articole Traduceri articole
ID articol: 956176 - View products that this article applies to.
Măriți totul | Reduceți totul

În această pagină

SIMPTOME

Când utilizați limba definiția datelor (DDL) pentru a modifica un tabel, și apoi încercați să salvați tabelul în Microsoft SQL Server 2008, este posibil să primiți următorul mesaj:
Nu este permisă salvarea modificărilor. Modificările pe care le-ați făcut necesită următoarele tabele să fie scăzut și recreat. Aveți fie făcute modificări într-un tabel care nu poate fi recreat sau activată opțiunea împiedică salvarea modificărilor care necesită tabelul să fie lor.

CAUZĂ

Această problemă se produce atunci când Preveni salvarea modificărilor care necesită recreare tabel opțiunea este activată și efectuați una sau mai multe dintre următoarele modificări la tabelul:
  • Modificați Permite Null setarea pentru o coloană.
  • Aveți de a reordona coloanele din tabel.
  • Modificați tipul acoperire de date coloană.
  • Adăugați o nouă coloană.
Când modificați un tabel astfel încât să vă modifice structura de metadate din tabelul, și apoi salvați tabelul, tabelul trebuie lor bazate pe aceste modificări. Acest lucru poate duce la pierderea de metadate într-o pierdere directă a datelor în timpul recreare a tabelului. Dacă activați Preveni salvarea modificărilor care necesită recreare tabel opțiunea în Designer sec?iunea a Opțiuni de Studio (SSMS) SQL Server Management fereastra, primiți mesajul de eroare menționat în secțiunea „Simptome".

REMEDIERE

Pentru a rezolva această problemă, utilizați instrucțiuni Transact-SQL pentru a face modificările a structurii de metadate unui tabel. Pentru informații suplimentare se referă la următorul subiect în manualele Online SQL Server:

http://msdn.Microsoft.com/en-us/library/ms190273.aspx

De exemplu, pentru a modifica MyDate coloana de tip datetime în la masă numit MyTable să accepte NULL valori se pot utiliza:

alter table MyTable alter column MyDate7 datetime NULL

Important Vă recomandăm insistent să că nu lucrați în jurul această problemă dezactivând opțiunea împiedică salvarea modificărilor care necesită tabelul recreare . Pentru mai multe informații despre riscurile de dezactivarea această opțiune, consultați secțiunea „mai multe informații".

STARE

Microsoft a confirmat că aceasta este o problemă în produsele Microsoft enumerate în secțiunea „se aplică la".

INFORMAȚII SUPLIMENTARE

Pentru a modifica Preveni salvarea modificărilor care necesită recreare tabel opțiunea, urmați acești pași:
  1. Deschideți SQL Server Management Studio (SSMS).
  2. Pe Instrumente meniu, faceți clic pe Opțiuni.
  3. În panou de navigare de Opțiuni cadru fereastră, faceți clic pe Designeri.
  4. Selectați sau goliți Preveni salvarea modificărilor care necesită recreare tabel casetă de selectare, și apoi faceți clic pe ok.
Notă Dacă dezactivați această opțiune, tu nu sunt avertizați când salvați tabelul care modificările pe care le-ați făcut s-au modificat structura de metadate din tabelul. În acest caz, se pot pierde date când salvați tabelul.

Risc de dezactivarea opțiunea "Împiedică salvarea modificărilor care necesită tabelul recreare"

Deși Dezactivarea acestei opțiuni vă poate ajuta să evita re-crearea unui tabel, de asemenea, poate duce la schimbări fiind pierdut. De exemplu, să presupunem că activați caracteristica Urmărire modificări în SQL Server 2008 pentru a urmări modificările la tabelul. Când efectuați o operație care cauzează tabelul să fie recreat, primiți mesajul de eroare menționat în secțiunea „Simptome". Cu toate acestea, dacă dezactivați această opțiune, schimbarea existente informațiile de urmărire se elimină când tabelul este lor. Prin urmare, se recomandă că nu lucrați în jurul această problemă dezactivând opțiunea.

Pentru a determina dacă caracteristica Urmărire modificări este activată pentru un tabel, urmați acești pași:
  1. În SQL Server Management Studio, a localiza tabelul în Explorer obiect.
  2. Faceți clic dreapta pe tabel, și apoi faceți clic pe Proprietăți.
  3. În casetă de dialog Proprietăți tabel , faceți clic pe Modificare urmărire.
Dacă valoarea de Modificare urmărire articol este adevărat, această opțiune este activată pentru tabel. Dacă valoarea este False, această opțiune este dezactivată.

Când este activată caracteristica de urmărire a schimba, utilizați instrucțiuni Transact-SQL pentru a modifica structura de metadate din tabelul.

Pași pentru a reproduce problema

  1. În SQL Server Management Studio, creați un tabel care conține o cheie primară în instrumentul proiectantul tabel.
  2. Faceți clic dreapta pe baza acoperire de date care conține acest tabel, și apoi faceți clic pe Proprietăți.
  3. În Proprietăți bază acoperire de date casetă de dialog, faceți clic pe Urmărirea modificărilor.
  4. Setați valoarea Urmărirea modificărilor element pentru a Adevărat, apoi faceți clic pe ok.
  5. Faceți clic dreapta pe tabel, și apoi faceți clic pe Proprietăți.
  6. În Proprietăți tabel casetă de dialog, faceți clic pe Urmărirea modificărilor.
  7. Setați valoarea Urmărirea modificărilor element pentru a Adevărat, apoi faceți clic pe ok.
  8. Pe Instrumente meniu, faceți clic pe Opțiuni.
  9. În Opțiuni casetă de dialog, faceți clic pe Designeri.
  10. Faceți clic pentru a selecta Preveni salvarea modificări care necesită tabelul recreare casetă de selectare, și apoi faceți clic pe ok.
  11. În instrumentul de proiectantul tabel, modificați Permite Null setarea o coloană existente.
  12. Încercați să salvați modificările la tabelul.

Proprietă?i

ID articol: 956176 - Ultima examinare: 6 iunie 2012 - Revizie: 1.0
SE APLICĂ LA:
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Express with Advanced Services
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Web
  • Microsoft SQL Server 2008 Workgroup
  • Microsoft SQL Server 2008 R2 Datacenter
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Express
  • Microsoft SQL Server 2008 R2 Express with Advanced Services
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Standard Edition for Small Business
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Express
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
  • SQL Server 2012 Enterprise Core
Cuvinte cheie: 
kbsqlsetup sql2008relnotetools sql2008relnote kbprb kbmt KB956176 KbMtro
Traducere automată
IMPORTANT: Acest articol a fost tradus de software-ul de traducere automată Microsoft, si nu de un traducător. Microsoft vă oferă atât articole traduse de persoane, cât și articole traduse automat, astfel incat aveti access la toate articolele din Baza noastră de informatii în limba dvs. materna. Totuși, un articol tradus automat nu este întotdeauna perfect. Acesta poate conține greșeli de vocabular, sintaxă sau gramatică, la fel cum un vorbitor străin poate face greșeli vorbind limba dvs. materna. Compania Microsoft nu este responsabilă pentru nici o inexactitate, eroare sau daună cauzată de traducerea necorespunzătoare a conținutului sau de utilizarea traducerii necorespunzătoare de către clienții nostri. De asemenea, Microsoft actualizează frecvent software-ul de traducere automată.
Face?i clic aici pentru a vizualiza versiunea în limba engleză a acestui articol: 956176

Trimite?i feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com