Ich habe jetzt über mehrere Wege versucht, den Inhalt der Datenbank in der Tabelle anzeigen zu lassen und bin immer wieder auf mehr Probleme gestoßen. Kann mir jemand helfen?
Ich weiß nicht, wie ich das angehen soll und ob ich den Anfang überhaupt richtig habe.
Ich kopiere den Code aus der Datenbankklasse mal rein.
package kontaktVerwaltung;
import java.awt.Checkbox;
import java.awt.GraphicsConfiguration;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import javax.swing.JOptionPane;
import com.mysql.cj.protocol.Resultset;
class Db {
private kontaktVerwaltungClass cw;
public Db(kontaktVerwaltungClass cw) {
this.cw = cw;
}
public void speichern() {
String url = "jdbc:mysql://localhost:3306/verwaltung";
String user = "root";
String pass = "";
try {
Connection con = DriverManager.getConnection(url, user, pass);
String sql = "insert into contact(name, adress, postcode, website) values(?,?,?,?)";
PreparedStatement pstmt = con.prepareStatement(sql);
pstmt.setString(1, cw.tfName.getText());
pstmt.setString(2, cw.tfAdress.getText());
pstmt.setString(3, cw.tfPostcode.getText());
pstmt.setString(4, cw.tfWebsite.getText());
pstmt.execute();
con.close();
}
catch (SQLException e) {
JOptionPane.showMessageDialog(null, e.getMessage());
}
}
public void show() {
String url = "jdbc:mysql://localhost:3306/verwaltung";
String user = "root";
String pass = "";
try {
Connection con = DriverManager.getConnection(url, user, pass);
String query1 = "SELECT * FROM contact";
Statement st = con.createStatement();
ResultSet rs = st.executeQuery(query1);
kontaktVerwaltungClass kw;
while(((ResultSet) rs).next()) {
kw = new kontaktVerwaltungClass();
kw.tbShow.add(rs);
}
con.close();
}
catch (SQLException e) {
JOptionPane.showMessageDialog(null, e.getMessage());
}
}
}