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

crear base de datos con tabla

Estas en el tema de crear base de datos con tabla en el foro de Visual Basic clásico en Foros del Web. hola, como podria crear una base de datos en acces con 1 tabla con 2 campos?? necesito hacerlo para que el programa que tengo la ...
  #1 (permalink)  
Antiguo 26/04/2008, 11:58
 
Fecha de Ingreso: agosto-2006
Mensajes: 110
Antigüedad: 17 años, 9 meses
Puntos: 0
crear base de datos con tabla

hola, como podria crear una base de datos en acces con 1 tabla con 2 campos??

necesito hacerlo para que el programa que tengo la cree automaticamente en el directorio donde la quiero para que el usuario ya no tenga nada que hacer de andar copiando base de datos ni nada

y tambien rectificar si existe la base de datos, si ya existe que no haga nada pero si no existe que la cree para empezar a trabajar con el software.


gracias
  #2 (permalink)  
Antiguo 26/04/2008, 19:13
Avatar de seba123neo  
Fecha de Ingreso: febrero-2007
Ubicación: Esperanza, Santa Fe
Mensajes: 1.046
Antigüedad: 17 años, 2 meses
Puntos: 19
Re: crear base de datos con tabla

Hola,para crear una base con campos,mira este codigo de la pagina de el guille:

Crear una tabla en una base de datos usando ADO y VB

y para comprobar la existencia de la base,pues comproba si existe el archivo de la base,algo asi:

Código:
Private Sub Form_Load()
On Error GoTo Falso
archivo = GetAttr("C:\archivo.txt")
MsgBox "El fichero existe", 32, "Archivo"
Exit Sub
Falso:
MsgBox "El fichero no existe", vbExclamation, "Archivo"
End Sub
o con Dir:

Código:
If Dir("C:\Archivo.txt") <> "" then
MsgBox "Existe el Archivo"
Else
MsgBox "No Existe el Archivo"
End If
o con FSO:

Código:
Private Function Existe(ruta As String) As Boolean
Dim busca As Scripting.FileSystemObject
Set buscar = New Scripting.FileSystemObject
If (buscar.FileExists(ruta)) Then
Existe = True
MsgBox "Existe el archivo"
Else
Existe = False
MsgBox "No existe el archivo"
End If
Set buscar = Nothing
End Function

Private Sub Form_Load()
Existe ("c:\archivo.txt")
End Sub
saludos.
__________________
" Todos Somos Ignorantes; lo que pasa es que no todos ignoramos las mismas cosas " - Albert Einstein
  #3 (permalink)  
Antiguo 26/04/2008, 19:23
 
Fecha de Ingreso: agosto-2006
Mensajes: 110
Antigüedad: 17 años, 9 meses
Puntos: 0
Re: crear base de datos con tabla

gracias por responder pero quiero crear una base de datos en acces y dentro de esa base hacer 1 tabla con 2 campos.

no se si me podrian dar otro ejemplo
  #4 (permalink)  
Antiguo 27/04/2008, 00:43
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Re: crear base de datos con tabla

Hola william, mira si te vale este ejemplo.
(Tienes que marcar la referencia "Microsoft ADO Ext. 2.8 for DDL and Security")

Código:
Private Sub Command1_Click()
    Dim catalogo As New ADOX.Catalog
    Dim Latabla As New ADOX.Table
    Dim LaBD As String
    
    LaBD = App.Path & "\Prueba.mdb"
    ' si ya existe la base de datos en el directorio no hacemos nada 
    If Len(Dir(LaBD)) Then Exit Sub
    ' creamos la base de datos
    catalogo.Create "Provider = Microsoft.Jet.OleDB.4.0; Data Source = " & LaBD
    catalogo.ActiveConnection = "Provider = Microsoft.Jet.OleDB.4.0; Data Source = " & LaBD
    ' creamos la tabla
    With Latabla
        .Name = "Tabla1"
        .Columns.Append "Id", adInteger
        .Columns.Append "Nombre", adVarWChar, 20
        .Columns.Append "Fecha", adDate
    End With
    catalogo.Tables.Append Latabla
    MsgBox "Se creó la base de datos " & LaBD & " con la tabla 'Tabla1'"
End Sub
Un saludo
  #5 (permalink)  
Antiguo 27/04/2008, 14:13
Avatar de seba123neo  
Fecha de Ingreso: febrero-2007
Ubicación: Esperanza, Santa Fe
Mensajes: 1.046
Antigüedad: 17 años, 2 meses
Puntos: 19
Re: crear base de datos con tabla

¿miraste el link que te deje? ahi esta como hacer..
__________________
" Todos Somos Ignorantes; lo que pasa es que no todos ignoramos las mismas cosas " - Albert Einstein
  #6 (permalink)  
Antiguo 28/04/2008, 09:16
 
Fecha de Ingreso: agosto-2006
Mensajes: 110
Antigüedad: 17 años, 9 meses
Puntos: 0
Re: crear base de datos con tabla

hola te agradesco me sirvio la creacion de la base y tablas pero cuando quiero ejecutar el programa me marca este error:

no se reconoce el formato de la base de datos 'c:\windows..................'

es que antes tenia la conexion de la base de datos con un data para guardar los cambios, tendra eso que ver? o tengo que hacer alguna conversion a la base de datos para que me la reconosca?

tengo 2 campos en la tabla uno tipo texto y el otro de fecha/hora como debo de poner para que me reconosca estos tipos de caracteres: adVarChar y para la hora??

y para hacer la conversion a access 97?

o como le podria hacer para que en el cd donde voy a grabar el ejecutable del programa me copie la base de datos a la ruta donde la necesito?

por que lo tenia asi pero no me sale:

Set objFSO = CreateObject("Scripting.FileSystemObject")
If fs.FileExists("C:\WINDOWS\............\respaldo.md b") Then

Else
fs.CopyFile "respaldo.mdb", "C:\WINDOWS\........\"
End If

la base de datos la grabo en el directorio raiz del cd

Última edición por william_085; 28/04/2008 a las 10:16
  #7 (permalink)  
Antiguo 28/04/2008, 11:59
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Re: crear base de datos con tabla

Bueno son varias preguntas, iré contestando una a una:

1.- no se reconoce el formato de la base de datos 'c:\windows..................'

El código que puse crea una base de datos Access2000. Tienes tres solucciones, la primera es cambiar la referencia a DAO 3.51 por DAO 3.6 "Microsoft DAO 3.6 Object Library", la segunda (si quieres crear la BD en formato 97) es cambiar el Provider 4.0 por 3.51, y la tercera (y que además te aconsejo) es que hagas la conexión a la BD mediante ADO.

2.- tengo 2 campos en la tabla uno tipo texto y el otro de fecha/hora como debo de poner para que me reconosca estos tipos de caracteres: adVarChar y para la hora??

El campo texto lo tienes que poner de tipo AdvarWChar (advarChar, si es BD97) coma y la longitud del campo. Para el tipo fecha/hora, como te puse en el ejemplo: adDate.

3.- y para hacer la conversion a access 97?

Ver respuesta 1.- aunque si tienes una BD Access 2000-2003 y la quieres convertir a 97 ( o al contrario), también se puede hacer por código (si es necesario, te pongo un ejemplo).

4.- o como le podria hacer para que en el cd donde voy a grabar el ejecutable del programa me copie la base de datos a la ruta donde la necesito?

Aquí no dices cómo generas el ejecutable, si es por el Asistente de empaquetado y distribución que trae VB (no te lo aconsejo, porque los hay bastante mejor), lo que tienes que hacer es cuando llegues a la ventana de "Archivos incluidos" le das al botón "Agregar", en el combo desplegable marcas "Todos los archivos (.*)" y seleccionas tu(s) base de datos, la(s) incluirá en el Setup y cuando se haga la instalación la(s) copiará en el mismo directorio de la aplicación.

Espero haber aclarado todas tus dudas.

Un saludo.
  #8 (permalink)  
Antiguo 28/04/2008, 12:41
 
Fecha de Ingreso: agosto-2006
Mensajes: 110
Antigüedad: 17 años, 9 meses
Puntos: 0
Re: crear base de datos con tabla

gracias amigo, me funciono, ya lo solucione.



saludos
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 18:52.