ayuda con acceess

andres
12 de Abril del 2004
hola alguien me prodria defcir como creo una tabla en una base de datos access 97...

Set conexion = New ADODB.Connection
Set Rs = New ADODB.Recordset

conexion.Provider = "Microsoft.Jet.OLEDB.4.0"
conexion.Open "c:BASE.mdb"

santiago
12 de Abril del 2004
no se bien que es lo que quieres crear una cadena de conexion(conectar la base de datos con la aplicacion en visual basic) o simplemente crear una tabla. en el primer caso te doy un ejemplo
Dim spathbase As String
spathbase = (App.Path & "USUARIOS.mdb")
'crear los objetos
Set cnn = New ADODB.Connection
Set rst = New ADODB.Recordset

'Crear la conexión manualmente
With cnn
.ConnectionString = _
"provider=Microsoft.jet.OLEDB.4.0;" & _
"Data source=" & spathbase & ";"
.Open
End With

'Indicar que tabla vamos a usar
rst.Open "SELECT * FROM usuario", cnn, adOpenDynamic, adLockOptimistic
esta cadena de conexion es con una base de datos access 2000, para conectarla con una de access 97 debes cambiar el OLEDB.4.0 por OLEDB.3.51 y listo.

si quieres crear una tabla, ve al menu complemento en visual basic luego administrador visual de datos te sale una pantalla le das nuevo y seleccionas access y creas tu base de datos con formato de access 97 o simplemente instala access 97 y crea la tabla.

andres
12 de Abril del 2004
no lo que yo quiero hacer es crear una tabla en tiempo de ejecucion ya tengo la base de datos conectada con tablas pero en un boton tengo que poner el codigo parta crear la una tabla nueva

tencho
12 de Abril del 2004
Lo podrias crear con SQL, yo no ocupe las variables de conexion pero debe ser lo mismo

Public DB As DAO.Database
SQL = "CREATE TABLE TABLA1 (CAMPO1 CHAR(8) NOT NULL,Fecha DATE NOT NULL,CAMPO2 CHAR(3) NULL," _
& "CAMPO3 CHAR(5) NULL,CAMPO4 NUMBER NULL)"
DB.Execute (SQL)

Meifer
12 de Abril del 2004
tambien puede ser asi
Dim MiBaseDeDatos As Database
Dim MiWorkspace As Workspace
Dim Mitabla As TableDef
Dim Ruta As String
Dim res As Long
Dim MisCampos(1) ' 2 campos MisCampos(0) y MisCampos(1)

Private Sub Command1_Click() ' crear base de datos
Set MiWorkspace = DBEngine.Workspaces(0)
Ruta = App.Path & "BD.mdb"
Set MiBaseDeDatos = MiWorkspace.CreateDatabase(Ruta, dbLangGeneral, dbVersion30)
Command2.Enabled = True
Command1.Enabled = False
End Sub

Private Sub Command2_Click()'crear tabla
Set Mitabla = MiBaseDeDatos.CreateTableDef("Tabla1")
Set MisCampos(0) = Mitabla.CreateField("Nombre", dbText)
MisCampos(0).Size = 30
Set MisCampos(1) = Mitabla.CreateField("Apellidos", dbText)
MisCampos(1).Size = 50
Mitabla.Fields.Append MisCampos(0)
Mitabla.Fields.Append MisCampos(1)
MiBaseDeDatos.TableDefs.Append Mitabla
Command2.Enabled = False
End Sub