Personnellement, je fais souvent des programmes de base de données, j'ai donc une compréhension approfondie du problème de l'interface entre les programmes et la base de données, car lorsque VB se connecte à la base de données, il est généralement statique, c'est-à-dire le chemin où la base de données est stockée. est corrigé, comme lors de l'utilisation de DATA, adodc, DataEnvironment, etc. de VB pour se connecter à la base de données, si le chemin pour stocker la base de données est modifié, le chemin ne sera pas trouvé, ce qui est vraiment ennuyeux.
La solution de l'auteur consiste à utiliser app.path pour résoudre ce problème.
1. Utilisez le contrôle de données pour vous connecter à la base de données, comme suit :
Insérez le processus form_load() :
PRivateform_load()
Définition de DimstrAsString
str=App.Chemin
IfRight(str,1)<>"/"Alors
str=chaîne "/"
FinSi
data1.databasename=str&"/nom de la base de données"
data1.recordsource="nom de la table de données"
data1.rafraîchir
sous-tendre
La signification de ces phrases est d’ouvrir la base de données dans le répertoire où s’exécute le programme en cours.
Vous devez simplement vous assurer que votre base de données se trouve dans le répertoire où se trouve votre programme.
2. Utilisez adodc (ADODataControl) pour le lien vers la base de données :
privateform_load()
Définition de DimstrAsString
str=App.Chemin
IfRight(str,1)<>"/"Alors
str=chaîne "/"
FinSi
str="Provider=Microsoft.Jet.OLEDB.3.51;PersistSecurityInfo=False;DataSource="&str&"/tsl.mdb"
Adodc1.ConnectionString=str
Adodc1.CommandType=adCmdText
Adodc1.RecordSource="select*fromtable3"
Adodc1.Actualiser
fin du sous-titre
3. Utilisez DataEnvironment pour la liaison de bases de données
Vous pouvez mettre dans le processus :
SurErreurReprendreSuivant
IfDataEnvironment1.rsCommand1.State<>adStateClosedThen
DataEnvironment1.rsCommand1.Close'Si ouvert, fermez
FinSi
'i=InputBox("Veuillez saisir le numéro de votre ami :", "Entrer")
'Ifi=""ThenExitSub
DataEnvironment1.Connection1.OpenApp.Path&"/userdatabase/tsl.mdb"
DataEnvironment1.rsCommand1.Open"select*fromtable3where number=""&i&"'"
'SetDataReport2.DataSource=DataEnvironment1
'DataReport2.DataMember="commande1"
'DataReport2.show
fin du sous-titre
4. Programmation à l'aide d'ADO (ActiveXDataObjects) :
Établir une connexion :
dimconnasnewadodb.connection
dimrsasnewadodb.recordset
dimstr
str=App.Chemin
IfRight(str,1)<>"/"Alors
str=chaîne "/"
FinSi
str="Provider=Microsoft.Jet.OLEDB.3.51;PersistSecurityInfo=False;DataSource="&str&"/tsl.mdb"
conn.openstr
rs.cursorlocation=aduseclient
rs.open "nom de la table de données", conn, adopenkeyset.adlockpessimistic
Fermez la base de données après utilisation :
connexion.fermer
setconn=rien->