Ich versuche, eine Spalte von einer varchar(50)
in eine nvarchar(200)
zu ändern. Was ist der SQL-Befehl zum Ändern dieser Tabelle?
ALTER TABLE TableName
ALTER COLUMN ColumnName NVARCHAR(200) [NULL | NOT NULL]
EDIT Wie bereits erwähnt, hätte NULL/NOT NULL angegeben werden müssen, siehe auch Robs Antwort .
Vergessen Sie nicht die Nullfähigkeit.
ALTER TABLE <schemaName>.<tableName>
ALTER COLUMN <columnName> nvarchar(200) [NULL|NOT NULL]
Verwenden Sie die Alter table-Anweisung.
Alter table TableName Alter Column ColumnName nvarchar(100)
Die Syntax zum Ändern einer Spalte in einer vorhandenen Tabelle in SQL Server (Transact-SQL) lautet:
ALTER TABLE table_name
ALTER COLUMN column_name column_type;
Zum Beispiel:
ALTER TABLE employees
ALTER COLUMN last_name VARCHAR(75) NOT NULL;
In diesem Beispiel für SQL Server ALTER TABLE
wird die Spalte mit dem Namen last_name
so geändert, dass sie den Datentyp VARCHAR(75)
aufweist, und die Spalte wird gezwungen, keine Nullwerte zuzulassen.
siehe hier
Solange Sie die Größe Ihres varchar erhöhen, sind Sie OK. Gemäß der Alter Table Referenz:
Das Verringern der Genauigkeit oder Skalierung einer Spalte kann zum Abschneiden von Daten führen.
Zum Ändern des Datentyps
alter table table_name
alter column column_name datatype [NULL|NOT NULL]
Zum Ändern des Primärschlüssels
ALTER TABLE table_name
ADD CONSTRAINT PK_MyTable PRIMARY KEY (column_name)