سؤال

أنا أحاول تغيير عمود من varchar(50) إلى nvarchar(200).ما هو الأمر SQL تغيير هذا الجدول ؟

هل كانت مفيدة؟

المحلول

ALTER TABLE TableName 
ALTER COLUMN ColumnName NVARCHAR(200) [NULL | NOT NULL]

تحرير كما لوحظ NULL/NOT NULL ينبغي أن يكون محددا ، انظر روب الجواب وكذلك.

نصائح أخرى

لا تنس nullability.

ALTER TABLE <schemaName>.<tableName>
ALTER COLUMN <columnName> nvarchar(200) [NULL|NOT NULL]

استخدم البيان الجدول ألتر.

Alter table TableName Alter Column ColumnName nvarchar(100)

وبناء الجملة لتعديل عمود في جدول موجود في SQL Server (SQL للعمليات) هي:

ALTER TABLE table_name
    ALTER COLUMN column_name column_type;

وعلى سبيل المثال:

ALTER TABLE employees
    ALTER COLUMN last_name VARCHAR(75) NOT NULL;

وهذا المثال ALTER TABLE SQL Server سيتم تعديل عمود يسمى 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)

وجرب هذا:

ALTER TABLE "table_name"
MODIFY "column_name" "New Data Type";
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top