Hallo,
ich habe versucht die geeeignete Daten Typen für MySQL "Int, Char, und Date" anzunehmen, statt Integer und String für Access, um die Rückgabe Werte zu erhalten. Die Datenbank soll gefplegt werden, das man Datensätze in der Datenbank einfügen ändern löschen, und Anzeigen lassen kann. Aus der Benutzeroberfläche über die Methoden aufruf kann in der Datenbank zugegrifen werden. Hier ist das DB Code eingefügt um das Problem zu erkennen.
Vielen Dank für weitere unterstützungen!
MfG gem
ich habe versucht die geeeignete Daten Typen für MySQL "Int, Char, und Date" anzunehmen, statt Integer und String für Access, um die Rückgabe Werte zu erhalten. Die Datenbank soll gefplegt werden, das man Datensätze in der Datenbank einfügen ändern löschen, und Anzeigen lassen kann. Aus der Benutzeroberfläche über die Methoden aufruf kann in der Datenbank zugegrifen werden. Hier ist das DB Code eingefügt um das Problem zu erkennen.
Vielen Dank für weitere unterstützungen!
MfG gem
Code:
import java.sql.*;
import java.util.*;
import java.sql.DriverManager;
import java.sql.SQLException;
//Durch class DB kann die Datenbank Verbindung aufgebaut werden
class DB {
private Statement st;
private Connection cn;
private String Treiber;
private String Adresse;
public boolean isConnected;
private String Datenbank;
private String Benutzer;
private String Passwort;
//Lade den JDBC-Treiber für Mysql-Datenbank
public DB() {
this.Treiber = ("jdbc.mysql.mitarbeiter");
//Url der Datenbank eingeben
this.Adresse = "jdbc:mysql:localhost:3306/DB_01:";
this.Datenbank = "DB_01";
this.Benutzer= "root";
this.Passwort= "";
}
// Die Verbindung zur Datenbank aufbauen
public void VerbindeDB() throws DBException {
try {
Class.forName(this.Treiber);
cn = DriverManager.getConnection(this.Adresse);
st = cn.createStatement();
isConnected = false;
System.err.println("Fehler bei datenbank connection");
isConnected = true;
System.out.println("Connection OK");
}
catch (ClassNotFoundException ex) {
throw new DBException("" + ex);
}
catch (SQLException ex) {
throw new DBException("" + ex);
}
}
// trenne der Datenbank-Connection
public void TrenneDB() throws DBException {
try {
st.close();
cn.close();
}
catch (SQLException ex) {
throw new DBException("" + ex);
}
}
// ResultSet liefert jeden Index von der DB Tabellen zurück
public Vector getString(String table, String feld) throws DBException {
Vector vec = new Vector();
String doz;
try {
ResultSet rs = this.st.executeQuery("SELECT " + feld + " FROM " + table);
while (rs.next()) {
doz = new String(rs.getString(feld));
vec.addElement(doz);
}
rs.close();
}
catch (SQLException ex) {
throw new DBException("" + ex);
}
return vec;
}
public Vector getMitarbeiterInfo(String sname) throws DBException {
Vector vec = new Vector();
// Deklarieren der Attribute des Mitarbeiters
Integer id, tel, stid;
char name, vorname, email, kuerzel, userid;
Date geb, eint;
try {
String quer = "SELECT * FROM Mitarbeiter where Name like " + "'" + sname+ "'";
ResultSet rs = this.st.executeQuery(quer);
rs.next();
id = new Integer(rs.getInt(1));
vec.addElement(id);
name = new Char (rs.getChar(2));
vec.addElement(name);
vorname = new Char (rs.getChar(3));
vec.addElement(vorname);
geb = new Date (rs.getDate(4).toDate());
vec.addElement(geb);
eint = new Date (rs.getDate(5).toDate());
vec.addElement(eint);
tel = new Integer (rs.getInt(6).toInt());
vec.addElement(tel);
stid = new Integer (rs.getInt(7));
vec.addElement(stid);
email = new Char (rs.getChar(8).toChar());
vec.addElement(email);
kuerzel = new Char (rs.getChar(9).toChar());
vec.addElement(kuerzel);
userid = new Char (rs.getChar(10).toChar());
vec.addElement(userid);
rs.close();
}
catch (SQLException ex) {
throw new DBException("" + ex);
}
return vec;
}
public void setMitarbeiter(int ID, char name, char vorname, Date geb,
Date eint, int tel, int stId, char email, char kuerzel, char userid) throws
DBException {
try {
String qer = "INSERT INTO Mitarbeiter ( ID, Name, Vorname, Geburtsdatum, Eintrittsdatum, TelNr, StID, EMail, Kuerzel, Userid ) VALUES (" +
ID+",'" + name + "','" + vorname + "','" + geb + "','" + eint + "','" +
tel + "', '" + stId + "', '" + email + "', '" + kuerzel + "', " + "'" + userid + "')";
System.out.println(qer);
this.st.executeUpdate(qer);
System.out.println("Insert Mitarbeiter OK");
}
catch (SQLException ex) {
throw new DBException("" + ex);
}
}
// Werte werden von der erzeugte Tabelle Mitarbeiter geloescht
public void delMitarbeiter(String sname) throws DBException {
try {
this.st.executeUpdate("DELETE FROM Mitarbeiter WHERE Name like " + "'" +
sname + "'");
}
catch (SQLException ex) {
throw new DBException("" + ex);
}
}
// Werte werden in die erzeugte Tabelle Mitarbeiter aktualisiert
public void updateMitarbeiter(int ID, char name, char vorname, Date geb,
Date eint, int tel, int stId, char email, char kuerzel, char userid) throws DBException {
try {
String quer="UPDATE Mitarbeiter SET Mitarbeiter.Name ='"+name+"',"+
"Mitarbeiter.Vorname ='"+vorname+"',Mitarbeiter.Geburtsdatum ='"+geb+"',"+
"Mitarbeiter.Eintrittsdatum ='"+eint+"',Mitarbeiter.TelNr='"+tel+"',Mitarbeiter.StID ='"+ stId+"', Mitarbeiter.EMail='"+email+"', "+
"Mitarbeiter.Kuerzel = '"+kuerzel+"', Mitarbeiter.Userid = '"+userid +"'"+
"WHERE Mitarbeiter.ID ="+ID;
System.out.println(quer);
this.st.executeUpdate(quer);
System.out.println("Update Mitarbeiter OK");
}
catch (SQLException ex) {
throw new DBException("" + ex);
}
}
}
class DBException
extends Exception {
public DBException() {
}
public DBException(String Fehlertext) {
super(Fehlertext);
}
}