Wenn Sie eine Datenbanktabelle erstellen, geben Sie alle Spalten zusammen mit ihren Datentypen an. Einmal erstellt, besteht normalerweise keine Absicht, diese Datentypen zu ändern. Wer auch immer das Schema entworfen hat, hätte schließlich viel darüber nachgedacht, welchen Datentyp jede einzelne Spalte akzeptieren sollte.
Wir alle wissen jedoch, dass sich die Dinge ändern können. Trotz unserer Bemühungen, jedes mögliche Szenario vorherzusehen, das unsere Datenbank treffen könnte, reicht das manchmal nicht aus.
Was tun wir also, wenn wir Transact-SQL verwenden müssen, um den Datentyp einer Spalte in SQL Server zu ändern?
Wir verwenden die ALTER TABLE Anweisung, es natürlich zu ändern.
Beispiel
Hier ist ein Beispiel für die Verwendung von T-SQL ALTER TABLE Anweisung zum Ändern des Datentyps einer Spalte:
ALTER TABLE Tasks
ALTER COLUMN TaskCode char(6);
GO
Dadurch wird die Tabelle mit dem Namen Tasks geändert , indem Sie seinen TaskCode ändern -Spalte auf einen Datentyp von char(6) . Beachten Sie, dass es nicht erforderlich ist, den verwendeten Datentyp anzugeben to be – Sie geben einfach den neuen Datentyp an und fertig. SQL Server erledigt den Rest.
Überprüfen Sie die Ergebnisse
Sie können das Ergebnis überprüfen, indem Sie INFORMATION_SCHEMA.COLUMNS abfragen :
USE Solutions;
SELECT
COLUMN_NAME,
DATA_TYPE,
CHARACTER_MAXIMUM_LENGTH AS MAX_LENGTH,
CHARACTER_OCTET_LENGTH AS OCTET_LENGTH
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Tasks'
AND COLUMN_NAME = 'TaskCode'; Ergebnis:
COLUMN_NAME DATA_TYPE MAX_LENGTH OCTET_LENGTH ----------- --------- ---------- ------------ TaskCode char 6 6