Ben bir sütun değiştirmeye çalışıyorum varchar(50)bir etmek nvarchar(200). Bu tabloyu değiştirmek için SQL komutu nedir?
Ben bir sütun değiştirmeye çalışıyorum varchar(50)bir etmek nvarchar(200). Bu tabloyu değiştirmek için SQL komutu nedir?
Yanıtlar:
ALTER TABLE TableName
ALTER COLUMN ColumnName NVARCHAR(200) [NULL | NOT NULL]
DÜZENLEME Belirtildiği gibi NULL / NOT NULL belirtilmiş olmalıdır, Rob'un cevabına da bakınız .
ALTER TABLE TableName ALTER COLUMN ColumnNameVarolan bir sütunu değiştirmek için bir komut [NOT NULL]verirseniz ve bunu açıkça belirtmezseniz [NULL], varsayılan olarak bu daha sonra olacaktır .
SysName(SSMS'nin izin vermediği).
ALTER TABLE table MODIFY COLUMN column datatypebenim için çalıştı.
Nullabiliteyi unutmayın.
ALTER TABLE <schemaName>.<tableName>
ALTER COLUMN <columnName> nvarchar(200) [NULL|NOT NULL]
Alter tablosu deyimini kullanın.
Alter table TableName Alter Column ColumnName nvarchar(100)
SQL Server'da (Transact-SQL) varolan bir tabloda bir sütunu değiştirmek için sözdizimi şöyledir:
ALTER TABLE table_name
ALTER COLUMN column_name column_type;
Örneğin:
ALTER TABLE employees
ALTER COLUMN last_name VARCHAR(75) NOT NULL;
Bu SQL Server ALTER TABLEörneği, last_nameveri türü olarak adlandırılan sütunu değiştirir ve sütunu VARCHAR(75)boş değerlere izin vermemeye zorlar.
buraya bakın
Varchar'ınızın boyutunu artırdığınız sürece sorun olmaz. Gereğince Alter Tablo referans:
Bir sütunun hassasiyetini veya ölçeğini azaltmak veri kesilmesine neden olabilir.
Veri türünü değiştirmek için
alter table table_name
alter column column_name datatype [NULL|NOT NULL]
Birincil anahtarı değiştirmek için
ALTER TABLE table_name
ADD CONSTRAINT PK_MyTable PRIMARY KEY (column_name)
ALTER TABLE [dbo].[TableName]
ALTER COLUMN ColumnName VARCHAR(Max) NULL
Bunu dene:
ALTER TABLE "table_name"
MODIFY "column_name" "New Data Type";