SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: HurryCrack en Martes 15 de Julio de 2003, 12:12

Título: Re: Crear base de datos
Publicado por: HurryCrack en Martes 15 de Julio de 2003, 12:12
Hola colegas, estoy intentando, a ver si es posible, el crear una base de datos pero claro desde codigo, sin ejecutar acces con el SHELL del api ni nada de eso, simplemente una instruccion o modulo a traves del cual se compruebe si existe una base de datos y si no es asi, crearla.
Título: Re: Crear base de datos
Publicado por: angelescj en Martes 15 de Julio de 2003, 12:45
En VB tienes los métodos createAlgo, que pertenecen al objeto DBEngine. Para crear una BD tienes el CreateDatabase, para crear las tablas debes acceder a la colección Tabledefs y utilizar el método Append ....
La ayuda trae varios ejemplos, pero si no entiendes algo o no es suficiente avisa.

:suerte:
Título: Re: Crear base de datos
Publicado por: HurryCrack en Martes 15 de Julio de 2003, 13:39
Graicas, pero ke referencia de visual basic tengo ke cargar para utilizar DBengine. Gracias
Título: Re: Crear base de datos
Publicado por: angelescj en Martes 15 de Julio de 2003, 13:46
Microsoft DAO 3.6 Object Library

Si no la tienes, también sirve

Microsoft DAO 3.51 Object Library
Título: Re: Crear base de datos
Publicado por: HurryCrack en Martes 15 de Julio de 2003, 17:21
Ya esta localizado. Muchas gracias, ya os dire como va la cosa.
Título: Re: Crear base de datos
Publicado por: acalanto en Martes 15 de Julio de 2003, 18:03
Efectivamente puedes utilizar el método append para crear una base de datos. Además esto lo puedes hacer con FIELDS, INDEXES, RELATIONS y cualquier otro objeto que dependa del objeto DataBase.

Un saludo.
Título: Re: Crear base de datos
Publicado por: acalanto en Martes 15 de Julio de 2003, 18:08
Este elemplo casado de MSDN te puede aclarar alguinos conceptos.

Sub CreateDatabaseX()

   Dim wrkDefault As Workspace
   Dim dbsNew As DATABASE
   Dim prpLoop As Property

   ' Get default Workspace.
   Set wrkDefault = DBEngine.Workspaces(0)

   ' Make sure there isn't already a file with the name of
   ' the new database.
   If Dir("NewDB.mdb") <> "" Then Kill "NewDB.mdb"

   ' Create a new encrypted database with the specified
   ' collating order.
   Set dbsNew = wrkDefault.CreateDatabase("NewDB.mdb", _
      dbLangGeneral, dbEncrypt)

   With dbsNew
      Debug.Print "Properties of " & .Name
      ' Enumerate the Properties collection of the new
      ' Database object.
      For Each prpLoop In .Properties
         If prpLoop <> "" Then Debug.Print "  " & _
            prpLoop.Name & " = " & prpLoop
      Next prpLoop
   End With

   dbsNew.Close

End Sub


Consulta en MSDN <CreateDataBase>;<TableDefs>;<Fields>;<Indexes>;<Relations>

Un saludo
Título: Crear base de datos
Publicado por: HurryCrack en Jueves 17 de Julio de 2003, 11:56
Muchas gracias a todos ya esta resuelto el problema, habeis sido de gran ayuda un abrazo.
:hippi: