أحاول تغيير عمود من varchar(50)
إلى nvarchar(200)
. ما هو أمر SQL لتغيير هذا الجدول؟
ALTER TABLE TableName
ALTER COLUMN ColumnName NVARCHAR(200) [NULL | NOT NULL]
EDITكما هو موضح NULL/NOT NULL كان ينبغي تحديده ، راجع إجابة Rob كذلك.
لا تنسَ البطلان.
ALTER TABLE <schemaName>.<tableName>
ALTER COLUMN <columnName> nvarchar(200) [NULL|NOT NULL]
استخدم بيان جدول Alter.
Alter table TableName Alter Column ColumnName nvarchar(100)
بناء الجملة لتعديل عمود في جدول موجود في SQL Server (Transact-SQL) هو:
ALTER TABLE table_name
ALTER COLUMN column_name column_type;
فمثلا:
ALTER TABLE employees
ALTER COLUMN last_name VARCHAR(75) NOT NULL;
سيقوم مثال SQL Server ALTER TABLE
هذا بتعديل العمود المسمى last_name
ليكون نوع بيانات VARCHAR(75)
وإجبار العمود على عدم السماح بالقيم الخالية.
انظر هنا
طالما كنت تقوم بزيادة حجم varchar الخاص بك فأنت موافق. حسب جدول التعديل المرجع:
قد يؤدي تقليل دقة أو قياس العمود إلى اقتطاع البيانات.
لتغيير نوع البيانات
alter table table_name
alter column column_name datatype [NULL|NOT NULL]
لتغيير المفتاح الأساسي
ALTER TABLE table_name
ADD CONSTRAINT PK_MyTable PRIMARY KEY (column_name)