2013-11-21 10 views
16

Tablonun veri türünü değiştirmeye çalıştığımda SQL Management Studion'dan şu korkunç mesajı alıyorum: "Değişiklikleri kaydetme izni yok. yapıldığı düşürülecek ve yeniden oluşturulacak aşağıdaki tabloları gerektirir ". Zaten T-SQL ile modifikasyonu yapmaya çalıştım ve işe yaradı, ama neden bunu tasarım modunu kullanarak yapamıyorum? SQL Server 2008 R2 kullanıyorum.Kaydetme değişikliklerine izin verilmiyor. Yaptığınız değişiklikler aşağıdaki tabloların düşürülmesini ve yeniden oluşturulmasını gerektiriyor

+1

Burada bir yanıt var: http://stackoverflow.com/questions/6810425/saving-changes-is-not-permitted-in-sql-server –

+0

Tablo yapısındaki değişiklikler komut dosyası oluşturulmalı ve kaynak kontrolüne kaydedilmelidir Diğer tüm kodlar gibi. Bunu asla tasarımcı kullanmayın. Alter tablonun düşürülmesi ve yeniden yaratılması için masa gerektirmez, tasarımcı yapar. – HLGEM

cevap

56

Değişiklik yapmak için T-SQL kullandığınızı veya en azından Tasarımcılar'ın bunları yapmadan önce oluşturdukları komut dosyalarını önizlemenizi şiddetle öneririm. Bununla birlikte, bunu tasarımcıda yapmak isterseniz, Araçlar ... Seçenekler ... Tasarımcılar ... Tablo ve Veritabanı Tasarımcıları bölümüne giderek bu kilidi kapatabilirsiniz. yaratma".

Bu kilit bir nedenden dolayı varsayılan olarak açıktır; Tasarımcı tarafından gizlenen bazı değişikliklerin yapılmasını engeller.

DÜZENLEME: Aşağıdaki yorumda belirtildiği gibi, kilidi devre dışı bırakmadığınız sürece değişiklikleri önizleyemezsiniz. Benim düşüncem şudur: tablo tasarımcısını bu özellik devre dışı bırakılmış bir tablo üzerinde çalışmak için kullanmak isterseniz, değişiklikleri her zaman işlemeden önce önizlemelisiniz. Kısacası, seçenekler:

  • İYİ SÜRECİ: Kullanım T-SQL
  • BÜYÜK DEĞİL: Tablo Designer kullanın kapısını kır ve DAİMA önizleme
  • ÇILGIN KONUŞ değiştirir: Bazı düğmelerini tıklayın.
+1

"Tasarımcıların oluşturduğu komut dosyalarını önizleme" şeklini nasıl ekleyebilir misiniz? Sağ tıklatıp Komut Dosyaları Oluştur, yeniden kaydetmeyi dener. Amaç ne? – makhdumi

22

Tablo yeniden oluşturma seçeneği gerektiren kaydetme değişikliklerini engelle seçeneğini değiştirmek için şu adımları izleyin: SQL Server Management Studio'yu (SSMS) açın. Araçlar menüsünde Seçenekler'i tıklatın. Seçenekler penceresinin gezinme bölmesinde Tasarımcılar'ı tıklatın. Tablo yeniden oluşturmayı gerektiren değişiklikleri kaydetmeyi engelle onay kutusunu seçin veya temizleyin ve sonra Tamam'ı tıklatın.

1

Sadece Stuart Ainsworth'un söylediklerine eklemek için, SSMS tasarımcı penceresine sağ tıklayıp tasarımcı tarafından oluşturulan komut dosyasını oluşturmak ve incelemek üzere düzenledikten sonra 'Kod Değişikliğini Oluştur ...' seçeneğini işaretleyebilirsiniz. değişikliklerin

+4

Bunu yapmak, kilit hala açıksa aynı hatayı verir. İşler bittiğinde çalışır. – RyanfaeScotland

İlgili konular