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 ColumnName
Varolan 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 datatype
benim 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_name
veri 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";