Modifica el diseño de una tabla después de que se haya creado con la instrucción CREATE TABLE.
Nota: El motor de base de datos de Microsoft Access no admite el uso de ALTER TABLE, ni de ninguna de las instrucciones de lenguaje de definición de datos, con bases de datos que no son de Microsoft Access. En su lugar, use los métodos Create de DAO.
Sintaxis
ALTER TABLE tabla {ADD {COLUMN tipo de campo[(tamaño)] [NOT NULL] [CONSTRAINT índice] |
ALTER COLUMN tipo de campo[(tamaño)] |
CONSTRAINT multifieldindex} |
DROP {COLUMN feld I CONSTRAINT nombre_índice} }
La instrucción ALTER TABLE consta de las siguientes partes:
Parte |
Descripción |
tabla |
El nombre de la tabla que se va a modificar. |
campo |
El nombre del campo que se va a agregar o eliminar de tabla. O bien, el nombre del campo que se va a modificar en tabla. |
tipo |
El tipo de datos de campo. |
tamaño |
El tamaño del campo en caracteres (solo para campos Texto y Binario). |
índice |
El índice de campo. |
índice_de_varios_campos |
La definición de un índice de varios campos que se va a agregar a tabla. |
nombre_del_índice |
El nombre del índice de varios campos que se va a eliminar. |
Observaciones
Mediante la instrucción ALTER TABLE se puede modificar una tabla existente de varias formas. Puede:
-
Usar ADD COLUMN para agregar un nuevo campo a la tabla. Se especifica el nombre del campo, el tipo de datos y (para los campos Texto y Binario) un tamaño opcional. Por ejemplo, en la instrucción siguiente se agrega un campo de texto de 25 caracteres llamado Notas a la tabla Empleados:
ALTER TABLE Employees ADD COLUMN Notes TEXT(25)
También se puede definir un índice en ese campo.
Si especifica NOT NULL para un campo, es obligatorio que los registros nuevos tengan datos válidos en ese campo.
-
Use ALTER COLUMN para cambiar el tipo de datos de un campo existente. Se especifica el nombre del campo, el tipo de datos nuevo y un tamaño opcional para los campos Texto y Binario. Por ejemplo, en la instrucción siguiente se cambia el tipo de datos de un campo de la tabla Empleados, denominado CódigoPostal (definido originalmente como Entero) por un campo de texto de 10 caracteres:
ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10)
-
Use ADD CONSTRAINT para agregar un índice de varios campos.
-
Use DROP COLUMN para eliminar un campo. Solo se especifica el nombre del campo.
-
Use DROP CONSTRAINT para eliminar un índice de varios campos. Solo se especifica el nombre del índice después de la palabra reservada CONSTRAINT.
Notas:
-
No se puede agregar o eliminar más de un campo o índice a la vez.
-
Puede usar la instrucción CREATE INDEX para agregar un índice de uno o varios campos a una tabla, y las instrucciones ALTER TABLE o DROP para eliminar un índice creado con ALTER TABLE o CREATE INDEX.
-
Puede usar NOT NULL en un solo campo o en una cláusula CONSTRAINT con nombre que se aplica a un solo campo o a una cláusula CONSTRAINT con nombre de varios campos. Pero solo puede aplicar la restricción NOT NULL una vez a un campo. Intentar aplicar esta restricción más de una vez produce un error en tiempo de ejecución.
-