Personalmente, a menudo hago algunos programas de bases de datos, por lo que tengo un conocimiento profundo del problema de cómo interactuar entre los programas y la base de datos, porque cuando VB se conecta a la base de datos, generalmente es estático, es decir, la ruta donde se almacena la base de datos. está arreglado, como cuando se usa VB's DATA, adodc, DataEnvironment, etc. para conectarse a la base de datos, si se cambia la ruta para almacenar la base de datos, no se encontrará la ruta, lo cual es realmente molesto.
La solución del autor es utilizar app.path para resolver este problema.
1. Utilice el control de datos para conectarse a la base de datos, de la siguiente manera:
Poner en el proceso form_load():
PRivateform_load()
Definición de DimstrAsString
str=Ruta.Aplicación
IfRight(str,1)<>"/"Entonces
cadena=cadena "/"
Fin si
data1.databasename=cadena&"/nombre de la base de datos"
data1.recordsource="nombre de la tabla de datos"
datos1.actualizar
subend
El significado de estas oraciones es abrir la base de datos en el directorio donde se ejecuta el programa actual.
Solo necesita asegurarse de que su base de datos esté en el directorio donde se encuentra su programa.
2. Utilice adodc (ADODataControl) para el enlace de la base de datos:
formulario_privado_carga()
Definición de DimstrAsString
str=Ruta.Aplicación
IfRight(str,1)<>"/"Entonces
cadena=cadena "/"
Fin si
str="Provider=Microsoft.Jet.OLEDB.3.51;PersistSecurityInfo=False;DataSource="&str&"/tsl.mdb"
Adodc1.ConnectionString=cadena
Adodc1.CommandType=adCmdText
Adodc1.RecordSource="seleccionar*de tabla3"
Adodc1.Actualizar
finalsub
3. Utilice DataEnvironment para vincular bases de datos
Puedes poner en el proceso:
OnErrorResumeNext
IfDataEnvironment1.rsCommand1.State<>adStateClosedThen
DataEnvironment1.rsCommand1.Close'Si está abierto, cierre
Fin si
'i=InputBox("Ingrese el número de amigo:", "Enter")
'Ifi=""EntoncesSalirSub
Entorno de datos1.Conexión1.OpenApp.Path&"/userdatabase/tsl.mdb"
DataEnvironment1.rsCommand1.Open"select*fromtable3where number='"&i&"'"
'SetDataReport2.DataSource=Entorno de datos1
'DataReport2.DataMember="comando1"
'DataReport2.mostrar
finalsub
4. Programación usando ADO (ActiveXDataObjects):
Establecer una conexión:
dimconnasnewadodb.conexión
dimrsasnewadodb.recordset
dimstr
str=Ruta.Aplicación
IfRight(str,1)<>"/"Entonces
cadena=cadena "/"
Fin si
str="Provider=Microsoft.Jet.OLEDB.3.51;PersistSecurityInfo=False;DataSource="&str&"/tsl.mdb"
conn.openstr
rs.cursorlocation=clienteaduse
rs.open"nombre de la tabla de datos",conn,adopenkeyset.adlockpessimistic
Cierre la base de datos después de su uso:
con.cerrar
setconn=nada->