Beste,
Voor school een opdracht om een connectie te leggen tussen Java en MS access voor het wegschrijven en het ophalen van gegevens. Nou heb ik onderstaande code hiervoor gebruikt. Maar het werkt niet helemaal, ik stuit steeds op onderstaande foutmelding:
foutmelding:
Onderstaande is mijn Java code..
Iemand enig idee wat het probleem kan zijn?
Ps. Ik heb meerdere malen gebruik gemaakt van Google, maar dat mocht niet baten..
Gegroet,
Mortj
Voor school een opdracht om een connectie te leggen tussen Java en MS access voor het wegschrijven en het ophalen van gegevens. Nou heb ik onderstaande code hiervoor gebruikt. Maar het werkt niet helemaal, ik stuit steeds op onderstaande foutmelding:
foutmelding:
Code:
java.sql.SQLException: [Microsoft][ODBC-stuurprogrammabeheer] De naam van de gegevensbron is niet gevonden en er is geen standaardstuurprogramma opgegeven
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6031)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:6188)
at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(JdbcOdbc.java:2458)
at sun.jdbc.odbc.JdbcOdbcConnection.initialize(JdbcOdbcConnection.java:320)
at sun.jdbc.odbc.JdbcOdbcDriver.connect(JdbcOdbcDriver.java:163)
at java.sql.DriverManager.getConnection(DriverManager.java:517)
at java.sql.DriverManager.getConnection(DriverManager.java:199)
at untitled4.Frame1.<init>(Frame1.java:19)
at untitled4.Application1.<init>(Application1.java:11)
at untitled4.Application1.main(Application1.java:40)
Onderstaande is mijn Java code..
Code:
package untitled4;
import java.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Frame1 extends JFrame {
JPanel contentPane;
BorderLayout borderLayout1 = new BorderLayout();
//Construct the frame
public Frame1() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
Connection conn = DriverManager.getConnection("jdbc:odbc:;DRIVER=Microsoft access driver(*.mdb);DBQ=C:patient.mdb;");
Statement lezen = conn.createStatement();
Statement toevoegen = conn.createStatement();
toevoegen.executeUpdate("INSERT INTO patient VALUES('test, 'test')");
//Dit is voor het wegschrijven van een nieuwe patient.
ResultSet rs = lezen.executeQuery("SELECT * FROM patient where naam ''");
//dit is voor het opzoeken van een patient. Deze zou dus door een veriable vervangen kunnen worden...
while (rs.next())
{
System.out.println(rs.getString(2));
}
System.out.println("Connected To Access");
conn.close();
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
//Component initialization
private void jbInit() throws Exception {
//setIconImage(Toolkit.getDefaultToolkit().createImage(Frame1.class.getResource("[Your Icon]")));
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(borderLayout1);
this.setSize(new Dimension(400, 300));
this.setTitle("Frame Title");
}
//Overridden so we can exit when window is closed
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}
}
Iemand enig idee wat het probleem kan zijn?
Ps. Ik heb meerdere malen gebruik gemaakt van Google, maar dat mocht niet baten..
Gegroet,
Mortj