SQL Server ens permet canviar la columna sempre que ho necessitem. Canviarem el nom de les columnes de la taula quan el nom de la columna no tingui sentit o no compleixi el propòsit de la seva creació. S'ha d'assegurar que tenim permís ALTER sobre l'objecte abans de canviar el nom de la columna.
Limitacions i restriccions
SQL Server té algunes restriccions a l'hora de canviar el nom de la columna perquè quan canviem el nom d'una columna, no implica que totes les referències a aquesta columna també es canviïn. Hem de modificar manualment tots els objectes que pertanyen a la columna reanomenada.
Per exemple , si volem canviar la columna d'una taula a la qual també es fa referència en a disparador , també cal modificar l'activador per reflectir el nom de la nova columna. El sys.sql_expression_dependencies es pot utilitzar per llistar totes les dependències de l'objecte abans de canviar el nom.
Podem canviar el nom de les columnes de la taula a SQL Server utilitzant principalment dues maneres:
- Transact-SQL.
- SQL Server Management Studio (SSMS)
Transact-SQL
SQL Server proporciona un procediment emmagatzemat estàndard anomenat SP_RENAME per canviar el nom d'un objecte creat per l'usuari a la base de dades actual. L'objecte creat per l'usuari pot ser una taula, columna, índex, tipus de dades d'àlies, etc.
Els scripts i els procediments emmagatzemats es poden trencar quan canviem alguna part del nom d'un objecte. T'aconsellem tirar l'objecte i tornar a crear amb el nom nou en lloc d'utilitzar aquesta instrucció per canviar el nom dels procediments emmagatzemats, activadors, funcions definides per l'usuari o vistes.
La sintaxi per canviar el nom de la columna mitjançant aquest enfocament és:
EXEC SP_RENAME '[Table Name].[Old Column Name]', '[New Column Name]', COLUMN'
Canvia el nom de la columna Exemple
L'exemple següent mostra la columna de canvi de nom de l'SQL Server mitjançant el procediment emmagatzemat SP_RENAME. Per fer-ho, farem un ' estudiant' taula que conté les dades següents:
Si volem canviar el ' ciutat' columna amb el nou nom ' nom_ciutat' d'aquesta taula, podem utilitzar la sintaxi o el procediment emmagatzemat d'SQL Server especificat anteriorment de la manera següent:
EXEC SP_RENAME 'Student.city', 'city_name', 'COLUMN'
Després d'executar aquest script, obtindrem el missatge següent:
Quan verifiquem la taula 'estudiant', podem veure que el nom de la columna de 'ciutat' s'ha canviat correctament:
SQL Server Management Studio (SSMS)
SSMS és una eina de programari de Windows que s'utilitza per connectar i treballar amb el nostre SQL Server des d'una interfície gràfica en lloc d'utilitzar la línia d'ordres. L'estudi de gestió ens permet canviar el nom de les columnes de la taula de les maneres següents:
- Canvieu el nom d'una columna mitjançant l'Explorador d'objectes
- Feu doble clic al nom de la columna
- Canvieu el nom d'una columna amb Table Designer
Comentem cadascun d'ells amb detall.
Canvieu el nom d'una columna mitjançant l'Explorador d'objectes
Els passos següents s'utilitzen per canviar el nom de la columna mitjançant l'Explorador d'objectes:
Pas 1: Aneu al menú Bases de dades -> Taules i amplieu-lo.
Pas 2: Seleccioneu la taula desitjada i expandiu-la.
Pas 3: Seleccioneu les Columnes i expandiu-les.
Pas 4: Feu clic amb el botó dret al nom de la columna que voleu canviar i trieu l'opció Canvia el nom.
La imatge següent explica tots els passos anteriors on hem escollit el ' estudiant' taula:
Pas 5: Escriviu un nom nou per a la columna seleccionada.
Pas 6: Actualitzeu la base de dades o la taula per acabar els passos de canvi de nom.
Pas 7: Executeu la instrucció SELECT per verificar el nom de columna canviat.
Canvieu el nom d'una columna amb Table Designer
Els passos següents s'utilitzen per canviar el nom de la columna mitjançant l'Explorador d'objectes:
Pas 1: Aneu al menú Bases de dades -> Taules i amplieu-lo.
Pas 2: Seleccioneu la taula desitjada en la qual voleu canviar el nom de la columna, feu-hi clic amb el botó dret del ratolí i trieu l'opció Disseny del menú contextual.
Pas 3: Un cop seleccionem l'opció Disseny, veurem la taula en mode de disseny com la imatge següent.
Pas 4: Seleccioneu la columna que voleu canviar i escriviu el nom nou per a aquesta columna. Permeteu-me canviar el nom de nom columna a f_nom .
Pas 5: Per desar els canvis que heu fet a la finestra de disseny, feu clic a Tanca botó i després el Sí botó a la finestra emergent que es mostra.
Podem desar els canvis fets a la finestra de disseny d'una altra manera navegant a Dossier menú i feu clic a Desa el nom de la taula o premeu CTRL+S al teclat.
Pas 6: Executeu la instrucció SELECT per verificar el nom de columna canviat
Feu doble clic al nom de la columna
Podem seguir els passos següents per canviar el nom de la columna fent doble clic:
Pas 1: Aneu a Bases de dades -> Taules -> Columnes.
python escriviu json al fitxer
Pas 2: Seleccioneu el nom de la columna que voleu canviar i feu doble clic. La imatge següent ho explica amb més claredat:
Pas 3: Escriviu un nom nou per a la columna escollida.
Pas 4: Actualitzeu la base de dades o la taula per acabar els passos de canvi de nom.
Pas 5: Executeu la instrucció SELECT per verificar el nom de columna canviat.