Je veux connecter mon fichier d'accès MS avec programme d'interface graphique Java, mais j'ai un problème avec la connexion ...
J'ai Windows 7 64B et MS Office 2007. Lorsque j'ai ouvert le gestionnaire de pilotes ODBC dans le panneau de configuration, je n'ai pas trouvé de pilote pour Microsoft Access (peut-être que lorsque j'ai commencé l'ODBC, on commence à exécuter la ODBC 64 bits, maintenant, je pense exécuter la ODBC 32bit. Je lis ça et je le fais: Connexion JDBC-ODBC pour la fenêtre 7 64 bits .. 1 . Cliquez avec le bouton droit de la souris sur la source de données (ODBC). Allez à Propriétés Modifier la chose Folloing P>
cible [% Systemroot% \ SYSWOW64 \ ODBCAD32.EXE] Démarrer in: [% Systemroot% \ System32] P>
Appuyez sur Entrée et continuez comme source d'administrateur: lien source " ) Maintenant, lorsque je commence à Conctrol Pannel, ODBC, je peux voir le pilote Screenshoot P>
mon code de programme (j'ai essayé de deux manières mais j'ai la même erreur): p> erreur p> java.sql.sqxception: [Microsoft] [Microsoft] [ODBC Driver Manager] Nom de la source de données non trouvée et aucun pilote par défaut spécifié p>
blockQuote> p>
9 Réponses :
Si vous utilisez Windows 64-Bit, vous devez probablement aller sur ce chemin
C: /Windows/syswow64/odbcad32.exe p> blockQquote>
Puis j'ai remarqué que vous utilisez la voie directe à la place créant un nouveau système
System DSN code>, votre chemin direct est correct jusqu'à la voie du fichier accès em> Doit donner le chemin complet comme celui-ci: P>
JDBC: ODBC: pilote = pilote Microsoft Access (* .mdb, * .Accdb); DBQ = chemin / à / invertory.mdb " p> blockQuote>
Pour obtenir le chemin Vous avez probablement besoin d'utiliser
java.io.file code> Xxx pré> p>
Database String = "JDBC: ODBC: pilote = pilote Microsoft Access ( .mdb, * .Accdb); DBQ = C: / Users / KEX / Documents / NetBeansProjects / Databas E_Form / Basey_Form"; String Database = "JDBC: ODBC: pilote = pilote d'accès Microsoft ( i> .mdb, * .accdb); dbq = c: \\ utilisateurs \\ keex \\ documents \\ da tabase_forms \\ Databas E_form \\ invertory.md b "; J'ai essayé à deux sens mais ne travaille pas. Étourdir une erreur après le début. Je suis à: c: /windows/syswow64/odbcad32.exe
J'ai essayé de mettre ce code après et avant la "String Database =" JDBC: ODBC: pilote = pilote Microsoft Access (.mdb, * .Accdb); DBQ = C: / Users / NetBeansProjects / Databas E_Form / Basey_Form /Invertory.mdb "; Database de chaîne =" JDBC: ODBC: pilote = pilote Microsoft Access (.mdb, * .Accdb); "Et maintenant j'ai autre chose:" java.lang.nullpointereException "tht signifie que j'ai connecté Pour accéder au fichier?
Non, dans cette fonction non ici est: Dropbox.com/shfym48e5mkso83p/tzmbvceuhz
J'ai répondu à une question similaire Entrez la description du lien ici un moment de retour. P>
Fondamentalement à cette époque: p>
Depuis lors, il semble y avoir un nouveau pilote JDBC MS-Access Open-Source pilote JDBC MS-Access . Je ne sais pas à quel point c'est bon. P>
Vous vient de manquer quelque chose dans votre code ici:
db ="JDBC:ODBC:Driver={Microsoft Access Driver (*.mdb, *.accdb)}; DBQ="+path;
Le problème est que vous devez exécuter sur Java 32 bits essayer d'installer la dernière JDK et cela fonctionnera p>
Je l'exécute à l'aide de la version JDK
Utilisez ucanaccess pilote JDBC: donc pour votre exemple ce sera connexion conn = drivermanager.geconnection ("JDBC: UCANAccess: //" + chemin) code> p> p> p>
final String fileName = "c:/myDataBase.mdb" Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String url = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="+fileName; Connection con = DriverManager.getConnection(url,username,password);
Veuillez décrire ce que vous faites aussi.
sur un système 64 bits, vous devriez: P>
Si vous travaillez dans NetBeans, une fois le fichier ucanacess.zip Ajouter tous les fichiers JAR dans la fenêtre CLASSPATH à l'aide de la fenêtre Propriété du projet Cliquez sur l'onglet Compiler et ajoutez un fichier JAR, puis compilez et testez l'application. p>
JDBC-ODBC Connexion MS-Access a cessé de fonctionner dans JDK8. J'ai résolu le problème en installant JDK7 avec JDK8 dans le même PC, une fois installé JDK7, je l'ai attribué en tant que version JDK à utiliser dans mon projet comme suit dans NetBeans: P>
1.Right Cliquez sur le projet dans la liste> Cliquez sur Propriétés P>
2.Cliquez sur les bibliothèques de l'arborescence de navigation de gauche P>
3.Cliquez sur le bouton Gérer les plates-formes> Cliquez sur le bouton Ajouter une plateforme ... P>
Assistant 4.Suivre, malgré cela montre Java Standard Edition, cliquez sur Suivant P>
5.Navigate à C: \ Fichiers de programme (x86) \ Java et sélectionnez le dossier de JDK7> Cliquez sur Suivant P>
6.Le champ Autofill avec les bonnes informations ...> Cliquez ensuite sur Terminer P>
7.Sélectionnez la plate-forme JDK dans la liste> Cliquez sur Fermer> OK P>
8.jdk7 devrait montrer dans le package de bibliothèques. P>
JDK7 dans les bibliothèques package Cliquez sur Back dans le navigateur pour revenir ici après avoir regardé l'image ... p>
d'ici sur tout doit fonctionner correctement. P>
J'espère que cela résout votre problème. P>
Merci. P>
Avez-vous vérifié que le composant ODBC a été installé lorsque vous avez installé l'accès?
Je ne me souviens pas, mais maintenant je réinstalle la MS Office 2007.
C'est le chemin direct que le chemin direct n'a pas besoin de créer un nouveau système DSN, vous devez probablement vérifier votre chemin sur le fichier
.mdb code>.
J'ai utilisé cette vidéo: dans la vidéo youtube.com/watch?v=Of4LRHOZoII la le code est working.but pour moi est pas. Je réinstallé tous, mais il a permis au bureau, mais ms toujours un même errror.