Lorsque vous créez une table de base de données, vous spécifiez toutes les colonnes avec leurs types de données. Une fois créés, il n'y a normalement aucune intention de modifier ces types de données. Après tout, celui qui a conçu le schéma aurait beaucoup réfléchi au type de données que chaque colonne devrait accepter.
Cependant, nous savons tous que les choses peuvent changer. Malgré tous nos efforts pour essayer de prévoir tous les scénarios possibles qui pourraient toucher notre base de données, parfois cela ne suffit pas.
Que faire si nous devons utiliser Transact-SQL pour modifier le type de données d'une colonne dans SQL Server ?
Nous utilisons le ALTER TABLE
déclaration pour le changer bien sûr.
Exemple
Voici un exemple d'utilisation de T-SQL ALTER TABLE
instruction pour changer le type de données d'une colonne :
ALTER TABLE Tasks ALTER COLUMN TaskCode char(6); GO
Cela modifie la table appelée Tasks
, en changeant son TaskCode
colonne à un type de données de char(6)
. Notez qu'il n'est pas nécessaire de spécifier le type de données utilisé être - vous spécifiez simplement le nouveau type de données et en avez fini avec lui. SQL Server fera le reste.
Vérifiez les résultats
Vous pouvez vérifier le résultat en interrogeant INFORMATION_SCHEMA.COLUMNS
:
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';
Résultat :
COLUMN_NAME DATA_TYPE MAX_LENGTH OCTET_LENGTH ----------- --------- ---------- ------------ TaskCode char 6 6