Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Crear BD acces desde VB6 con x numero de tablas

Estas en el tema de Crear BD acces desde VB6 con x numero de tablas en el foro de Visual Basic clásico en Foros del Web. Hola a todos. Tengo que generar una base de acces a partir de una consulta sql en VB. Alguien sabe como hacerlo, de manera que ...
  #1 (permalink)  
Antiguo 25/10/2006, 09:08
 
Fecha de Ingreso: septiembre-2006
Mensajes: 59
Antigüedad: 17 años, 7 meses
Puntos: 0
Crear BD acces desde VB6 con x numero de tablas

Hola a todos.

Tengo que generar una base de acces a partir de una consulta sql en VB.
Alguien sabe como hacerlo, de manera que funcione??

Se crear la BD, pero solo logro insertar una tabla, ya que luego me dice que el objeto no esta disponible...

No voy a poner codigo porque es un engorro...

Si alguien tiene un ejemplo donde cree 2 o 3 tablas dinamicamente a partir de algo, agradeceria lo colgara..

Si no cualquier ayuda es grata.

Un saludo
  #2 (permalink)  
Antiguo 25/10/2006, 14:00
Avatar de kortiz  
Fecha de Ingreso: septiembre-2006
Mensajes: 16
Antigüedad: 17 años, 7 meses
Puntos: 0
Aqui tenes 2 formas de crear bases de datos de Access:
La Primera es usando referencia ADOX
La segunda usa una instruccion SQL:

1
-------------------------------
Dim cat As New ADOX.Catalog
Dim tbl(32) As New ADOX.Table

Private Sub Command2_Click()
nom = ""
nom = InputBox("Escribe el nombre de la base de datos", "Crear Base")

If nom <> "" Then

cat.Create "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & App.Path & "\" & nom & ".mdb;"

cat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & App.Path & "\" & nom & ".mdb;"

For i = 1 To 32
With tbl(i)
.Name = i .Columns.Append "ID", adInteger
.Columns.Append "Nombre", adVarWChar, 255
.Columns.Append "Check", adVarWChar, 1

.Columns("Nombre").Attributes = adColNullable
.Columns("Check").Attributes = adColNullable

End With

cat.Tables.Append tbl(i)
Next
nom = App.Path & "\" & nom & ".mdb"
MsgBox nom, , "Creada Satisfactoriamente en:"
End If
End Sub
---------------------------------------------

2
---------------------------------------------
Private Sub CrearTabla_Click()
Dim sql As String
Dim NombreTabla As String
Dim cn As ADODB.Connection

Set cn = New ADODB.Connection ' abrimos la conexión a la base de datos

cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Persist Security Info=False;" & _
"Data Source=" & App.Path & "\NombreBD.mdb"
NombreTabla = Text1 ' o cualquier otra variable que quieras poner
' El campo id lo creamos de tipo autonumérico

sql = "CREATE TABLE " & NombreTabla & "(" & _
"id COUNTER CONSTRAINT miIndice UNIQUE, " & _
"Cliente NUMBER NOT NULL, " & _
"Fecha DATE NOT NULL, " & _
"Nombre VARCHAR(6) ," & _
"Factura NUMBER ," & _
"SiNo YESNO )"

cn.Execute sql, , adCmdText
MsgBox "Tabla creada"
End Sub
----------------------------------------
Para crear varias podrias hacer un bucle
  #3 (permalink)  
Antiguo 26/10/2006, 04:06
 
Fecha de Ingreso: septiembre-2006
Mensajes: 59
Antigüedad: 17 años, 7 meses
Puntos: 0
Ok

Gracias por las 2 formas!!

Lo pruebo y te digo que tal.

Muchisimas gracias
  #4 (permalink)  
Antiguo 28/10/2006, 16:54
Avatar de jquimi  
Fecha de Ingreso: mayo-2005
Mensajes: 32
Antigüedad: 19 años
Puntos: 0
Pregunta Como saber que tablas hay en una base datos Access

Que tal

Lei sus post y creo que ustedes pueden ayudarme.

Tengo una base de datos Access y quiero desde Visual Basic 6 conocer que tablas son las que conforman la base.

Ayuda please.
Gracias de antemano.
__________________
[/FONT][SIZE=6][COLOR=Navy]
:aplauso: Gito
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:15.