Les connexions à la base de données fonctionnent parfois mal. Il y a des problèmes avec conn.open connstr et des problèmes avec l'appel de rs(user.id) dans les requêtes de connexion. Récemment, j'ai rencontré un problème lors de la création d'un système de gestion client pour un client :
La situation est la suivante lors de l'utilisation de la chaîne de connexion suivante :
connstr=DBQ=+server.mappath(db/#kehumsg.mdb)+;DefaultDir=;DRIVER={Pilote Microsoft Access (*.mdb)};
définir conn=server.createobject(ADODB.CONNECTION)
conn.open connstr
Il y a une requête de jointure,
L'identifiant de la deuxième table à appeler est utilisé dans
Normalement, rs(b.id) peut être ajusté comme ceci, mais il est affiché que l'élément n'est pas trouvé dans la collection correspondant au nom ou au numéro ordinal requis.
Je n'ai pas trouvé de réponse après avoir posté sur csdn.
Enfin, j'ai utilisé rs(id) pour résoudre le problème. Je pensais que cet appel devrait consister à ajuster l'identifiant de la première table.
Mais il ajuste le deuxième compteur, mais ce que je veux, c'est le deuxième compteur.
Après quelques recherches, il s'avère que c'est vraiment le cas. Cela ajuste l'ID de cette dernière table, ça fait du bien, je peux rechercher quelque chose par moi-même, haha~~.
Mais alors que j'étais sur le point de quitter le travail, le client m'a dit qu'il y avait un problème et que rien n'était accessible.
L'erreur s'est produite dans conn.open connstr de la connexion ci-dessus.
Comment quelque chose pourrait-il mal se passer ici ? J'ai cherché en ligne et j'ai dit que cela s'était produit, alors je l'ai modifié en fonction de ce qu'il a dit.
dbpath=server.mappath(db/#kehumsg.mdb)
connstr= fournisseur=microsoft.jet.oledb.4.0;source de données= & dbpath
définir conn=server.createobject(adodb.connection)
conn.open connstr
Je n'y ai pas beaucoup réfléchi, j'ai probablement essayé,
Mais les bons moments n’ont pas duré longtemps et aujourd’hui le client a soulevé un autre problème.
Après y avoir jeté un coup d'œil, j'ai été convaincu. Une autre erreur s'est produite dans la requête conjointe.
Comment cela a-t-il pu arriver ? Après quelques recherches avec le responsable, j'ai finalement découvert le problème :
À ce stade, vous pouvez appeler rs(b.id) dans l'identifiant de la deuxième table et vous devez l'appeler de cette manière.
Cela ne peut pas être comme le premier personnage rejoint,
Je pense que cela devrait être un problème avec le moteur de base de données. Je ne sais pas ce que tout le monde pense.
Ici, je recommande le deuxième type de connexion à tout le monde,
/////////////////////////////////////////////// /// ////////// /////////////////////////////////////////////// /// ///////////
Un autre problème a été découvert, et la solution est la suivante : ajouter des utilisateurs pour modifier les autorisations de windows/temp.