Construir una base de datos en visual Basic

Que tal Zacher,
Solicito tu ayuda en lo siguiente:
Estoy trabajando en un formulario en VB en excel y deseo construir una bases de datos en VB y no sobre la hoja excel, alimentada por el form VB; ya he podido guardae el valor de una sola variable mediante el método get, y me parece que siendo este posible, se puede construir la base de datos.
De antemano gracias por tu respuesta.

1 respuesta

Respuesta
1
Aquí tienes el código para construir un base de datos desde visual basic:
Private Sub CrearBase(sBase As String)
'Crear la base de datos indicada
'
Dim Db As Database
Dim Fd As Field
Dim Tb As New TableDef 'Definir una Tabla
Dim Idx As New Index 'Para crear un índice
Dim i As Integer
Set Db = CreateDatabase(sBase, dbLangSpanish, dbVersion20)
'
'La constante dbVersion20 no aparece en la ayuda, en su lugar lo hace la dbVersion25
'pero ésa no está creada!
'
'Primero la tabla de las tareas
Set Tb = Db.CreateTableDef("Tareas")
'Vamos a crear cada uno de los campos
Set Fd = Tb.CreateField("ID", dbLong)
'Ahora vamos a asignar las propiedades de contador, etc.
Fd.Attributes = dbAutoIncrField Or dbUpdatableField Or dbFixedField
Tb.Fields.Append Fd
'El resto de los campos
Set Fd = Tb.CreateField("Fecha", dbDate)
Tb.Fields.Append Fd
Set Fd = Tb.CreateField("Asunto", dbText, 255)
Tb.Fields.Append Fd
Set Fd = Tb.CreateField("Descripcion", dbMemo)
Tb.Fields.Append Fd
Set Fd = Tb.CreateField("FechaInicio", dbDate)
Tb.Fields.Append Fd
Set Fd = Tb.CreateField("FechaTermino", dbDate)
Tb.Fields.Append Fd
Set Fd = Tb.CreateField("Terminada", dbInteger)
Tb.Fields.Append Fd
'Creamos un índice con el ID
Idx.Name = "PrimaryKey"
Idx.Unique = True
Idx.Primary = True
Idx.Fields = "ID"
Tb.Indexes.Append Idx
'Añadimos la tabla a la base
Db. TableDefs. Append Tb
'
'Creamos la otra tabla: Anotaciones
Set Tb = Db.CreateTableDef("Anotaciones")
'El campo ID, es el contador, etc.
Set Fd = Tb.CreateField("ID", dbLong)
Fd.Attributes = dbAutoIncrField Or dbUpdatableField Or dbFixedField
Tb.Fields.Append Fd
'El resto de los campos
Set Fd = Tb.CreateField("Fecha", dbDate)
Tb.Fields.Append Fd
Set Fd = Tb.CreateField("Tema", dbText, 50)
Tb.Fields.Append Fd
Set Fd = Tb.CreateField("Asunto", dbText, 255)
Tb.Fields.Append Fd
Set Fd = Tb.CreateField("Medio", dbText, 255)
Tb.Fields.Append Fd
Set Fd = Tb.CreateField("Localizacion", dbText, 255)
Tb.Fields.Append Fd
Set Fd = Tb.CreateField("Descripcion", dbMemo)
Tb.Fields.Append Fd
Set Fd = Tb.CreateField("Detalle", dbLongBinary)
Tb.Fields.Append Fd
'Creamos un índice con el ID
Set Idx = Nothing 'Quitar la referencia anterior
Idx.Name = "PrimaryKey"
Idx.Unique = True
Idx.Primary = True
Idx.Fields = "ID"
Tb.Indexes.Append Idx
'Añadimos la segunda tabla a la base
Db. TableDefs. Append Tb
'Cerramos la base
Db. Close
MsgBox "Nueva base de datos " & sBase & " creada.", vbInformation
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas