Yanıtlar:
Aşağıdaki gibi bir T-SQL ifadesiyle yapıyorsanız, tablo düşmesi gerçekleşmez ve bunu bir üretim ortamında güvenle yapabilirsiniz:
alter table <table> alter column <column> nvarchar(biggernumber) [not] null
Bunu SSMS Tasarım Tablosu GUI'sini kullanarak yaparsanız, değişikliği uygulamak için hangi betiği kullanmaya karar verdiğine bağlı olacaktır. Bazen verileri geçici bir tabloya ekler, orijinal tabloyu düşürür, o tablonun yeni bir versiyonunu oluşturur ve tekrar yeni tabloya ekler. Ne yapacağını öğrenmenin kolay bir yolu "Script Üret" düğmesini tıklamak ve yürütmeyi planladığı T-SQL'e bakmaktır.
Bir nvarchar
sütunun sütun genişliğini artırmak, bir tablo damlası gerektirmez. Hiçbir ALTER TABLE
operasyon da olmazdı . Tablo veya sütun özelliklerini değiştirirken yapılan kısıtlamalar hakkında ayrıntılar için, ALTER TABLE ifadesinde okuyabilirsiniz .
En alakalı kısımları aşağıdaki dokümantasyondan kopyaladım:
Bir Sütunun Boyutunu Değiştirme
ALTER COLUMN yan tümcesinde sütun veri türü için yeni bir boyut belirterek bir sütunun uzunluğunu, hassasiyetini veya ölçeğini değiştirebilirsiniz. Sütunda veri varsa, yeni boyut verilerin maksimum boyutundan küçük olamaz. Ayrıca, sütun varchar, nvarchar veya varbinary veri türü olmadıkça ve dizin bir PRIMARY KEY kısıtlamasının sonucu olmadıkça sütun bir dizinde tanımlanamaz. Örnek P'ye bakınız.
Kilitler ve ALTER TABLE
ALTER TABLE'da belirtilen değişiklikler hemen uygulanır. Değişiklikler tablodaki satırların değiştirilmesini gerektiriyorsa, ALTER TABLE satırları günceller. ALTER TABLE, çok kısa bir SCH-M kilidi gerektiren çevrimiçi dizin işlemleri dışında, değişiklik sırasında tablodaki meta verileri bile referans almadığından emin olmak için tablodaki bir şema değiştirme kilidini aldı. ALTER TABLE… SWITCH işleminde, kilit hem kaynak hem de hedef tablolardan elde edilir. Tabloda yapılan değişiklikler kaydedilir ve tamamen kurtarılabilir. Bir sütunu bırakmak veya varsayılan olarak bir NOT NULL sütunu eklemek gibi çok büyük tablolardaki tüm satırları etkileyen değişiklikler, birçok günlük kaydını tamamlamak ve oluşturmak için uzun zaman alabilir. Bu ALTER TABLE ifadeleri, herhangi bir INSERT, UPDATE,