RE:modificar el tipo de datos de una tabla
Hola:
Se puede hacer esto que necesitas mediante código de VBA desde otra base de datos o mediante una aplicación hecha con Visual Basic, abriendo la base donde se encuentra la tabla desde el Evento al hacer click de un botón de comando.
Antes de nada entra en la Ventana Referencias (ya sea de una mdb o desde Visual Basic) y marca la Referencia: Microsoft DAO 3.6 Object Library y luego inserta este Procedimiento:
Private Sub Comando1_Click()
Dim Base As DAO.Database
Set Base = OpenDatabase("C:\My Documents\Bases de datos\TuBase.mdb")
Base.Execute "ALTER TABLE TuTabla ALTER COLUMN Id Counter Primary Key"
Base.Execute "ALTER TABLE TuTabla ALTER COLUMN Codigo Integer"
Base.Execute "ALTER TABLE TuTabla ALTER COLUMN Nombre Text (40)"
Base.Execute "ALTER TABLE TuTabla ALTER COLUMN Domicilio Text (60)"
Base.Execute "ALTER TABLE TuTabla ALTER COLUMN Localidad Text (30)"
Base.Execute "ALTER TABLE TuTabla ALTER COLUMN Fecha DateTime"
Base.Execute "ALTER TABLE TuTabla ALTER COLUMN Cantidad Integer"
Set Base = Nothing
End Sub
Como verás el ejemplo supone que la tabla a modificar tiene los campos:
Id, Codigo, Nombre, Domicilio, Localidad, Fecha y Cantidad.
El Id lo cambia a Autonumérico y clave primaria, El Código lo pone Numérico, la Fecha como Fecha/Hora y a los campos de texto les cambia la longitud.
Si esto lo haces desde una aplicación Visual Basic, cambia la línea del Set Base por esta:
Set Base = BaseEngine.OpenDatabase("C:\My Documents\Bases de datos\TuBase.mdb").
A partir de aquí puedes seguir investigando sobre la forma de trabajar con ALTER TABLE y ALTER COLUMN, porque seguro que se pueden hacer otros cambios.
Espero que te sea de utlilidad. Un saludo
Enrique