Podczas tworzenia tabeli bazy danych określasz wszystkie kolumny wraz z ich typami danych. Po utworzeniu zwykle nie ma zamiaru zmieniać tych typów danych. W końcu ktokolwiek zaprojektował schemat, zastanowiłby się, jaki typ danych powinna akceptować każda kolumna.
Jednak wszyscy wiemy, że wszystko może się zmienić. Pomimo naszych najlepszych starań, aby przewidzieć każdy możliwy scenariusz, który może trafić do naszej bazy danych, czasami to nie wystarczy.
Co więc zrobimy, jeśli musimy użyć Transact-SQL do zmiany typu danych kolumny w SQL Server?
Używamy ALTER TABLE
oświadczenie, aby to oczywiście zmienić.
Przykład
Oto przykład użycia T-SQL ALTER TABLE
instrukcja zmiany typu danych kolumny:
ALTER TABLE Zadania ALTER COLUMN Kod zadania char(6);GO
Zmienia to tabelę o nazwie Tasks
, zmieniając jego TaskCode
kolumna na typ danych char(6)
. Pamiętaj, że nie ma potrzeby określania, jakiego typu danych użyto być – po prostu określasz nowy typ danych i kończysz z tym. SQL Server zajmie się resztą.
Sprawdź wyniki
Możesz sprawdzić wynik, wysyłając zapytanie do INFORMATION_SCHEMA.COLUMNS
:
USE Solutions;SELECT COLUMN_NAME, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH AS MAX_LENGTH, CHARACTER_OCTET_LENGTH AS OCTET_LENGTHFROM INFORMATION_SCHEMA.COLUMNSWHERE TABLE_NAME ='Zadania'AND COLUMN_NAME ='pre>Kod zadania';Wynik:
NAZWA_KOLUMNY TYP_DANYCH MAX_DŁUGOŚĆ OCTET_LENGTH----------- --------- ---------- ------------Kod zadania znak 6 6