Resumen Cambiar tipo de dato en Access

>Alguien sabe como cambiar el tipo de dato de un campo via programa en una
base de datos Access.

Sí, yo.

Puedes hacer algo así :

<<<<<<<<<<<<<<<<<<<<<<<

Sub CambiarMDB

  Dim DbMDB as database
  Set DbMDB = opendatabase( "c:\micarpeta\mimdb" )

on error goto ErrorModificando

  ' Iniciamos el proceso.
  WorkSpaces(0).BeginTransactions
  DbMDB.Execute "ALTER TABLE Tabla ADD COLUMN NuevoCampo Text
(50)",dbfailonerror
  DbMDB.Execute "UPDATE Tabla SET NuevoCampo=ViejoCampo", dbfailonerror
  DbMDB.Execute "ALTER TABLE Tabla DROP ViejoCampo",dbfailonerror
  WorkSpaces(0).CommitTrans
  Exit Sub

ErrorModificando:

  WorkSpaces(0).Rollbak

End Sub

>>>>>>>>>>>>>>>>>>>>><

Éste ejemplo te sustituye ViejoCampo por NuevoCampo, guardando los datos.

Ten en cuenta que aquí se supone que ambos campos serán de texto.
Si hubiera que hacer algún tipo de transformación del dato (de texto a
integer, por ejemplo), habría que tenerlo en cuenta en la instrucción
UPDATE...

También puedes limitar el alcance de la instrucción UPDATE poniendo una
claúsula WHERE. Por ejemplo :

  DbMDB.Execute "UPDATE Tabla SET NuevoCampo=ViejoCampo WHERE
ViejoCampo<=1000", dbfailonerror

Si no indicas el WHERE, afecta a toda la Tabla.


Espero haberte ayudado.
Si tienes alguna duda, avísame.
Saludos.
Una obediencia ciega supone siempre una ignorancia extrema.
ORZO, <orzo@orzo.com>



Resumen Resumen

Visual Basic Página de Visual Basic

Página principal Página principal

www.jrubi.com