· 8 years ago · Jul 01, 2018, 02:02 PM
1package DBAnbindung;
2
3import java.sql.Connection;
4import java.sql.DriverManager;
5import java.sql.PreparedStatement;
6import java.sql.ResultSet;
7import java.util.Vector;
8
9import javax.swing.JOptionPane;
10
11public class Main {
12
13 public static void main(String[] args) throws Exception {
14 //verbindungHerstellen();
15 tabelleErstellen();
16 artEinfuegen();
17 artAktualisieren();
18 //infoAbrufen();
19 //trySelect();
20 }
21
22 public static Connection verbindungHerstellen() throws Exception{
23
24 try{
25 String treiber = "com.mysql.jdbc.Driver"; //Notizen: fkt, sinn, treiber, auslagern, demo
26 String url = "jdbc:mysql://localhost:3306/beispiel";
27 String benutzer = "root";
28 String passwort = "";
29 Class.forName(treiber);
30
31 Connection conn = DriverManager.getConnection(url,benutzer,passwort);
32 System.out.println("Verbindung zur Datenbank hergestellt");
33 return conn;
34 } catch(Exception f){
35 System.out.println("Fehler beim Verbinden: "+f);
36 }
37
38
39 return null;
40 }
41
42 public static void tabelleErstellen() throws Exception {
43 try{
44 Connection conn = verbindungHerstellen(); //Notizen: Kassensystem, sql if not...,
45 String sql = "CREATE TABLE IF NOT EXISTS benutzer(benutzernr int NOT NULL AUTO_INCREMENT, vorname varchar(255), nname varchar(255), PRIMARY KEY(benutzernr))";
46 PreparedStatement pst = conn.prepareStatement(sql);
47 pst.executeUpdate();
48 } catch(Exception f){
49 System.out.println("Fehler beim erstellen der Tabelle: "+f);
50 } finally {
51 System.out.println("Erstellen der Tabelle wurde erfolgreich probiert");
52 }
53 }
54
55 public static void artEinfuegen() throws Exception {
56 final String var1 = JOptionPane.showInputDialog("Name des Artikels eingeben: "); //kassensystem, ausgelagert, ähnlicher auf bau, GUI nicht vergessen
57 final String var2 = JOptionPane.showInputDialog("Preis des Artikels eingeben: ");
58 try {
59 String sql = "INSERT INTO beispiel (name, preis) VALUES ('"+var1+"', '"+var2+"')";
60 Connection conn = verbindungHerstellen();
61 PreparedStatement pst = conn.prepareStatement(sql);
62 pst.executeUpdate();
63 } catch(Exception f) {
64 System.out.println("Fehler beim Einfügen der Attribute: "+f);
65
66 } finally {
67 System.out.println("Informationen erfolgreich in die Tabelle eingetragen");
68
69 }
70
71 }
72
73 public static void artAktualisieren() throws Exception {
74 final String neuerName = "Kopfsalat"; //nicht
75 final String neuerPreis = "0.89";
76 final String gewünschteArtikelnr = "8";
77 try {
78 String sql = "UPDATE beispiel SET name = '"+neuerName+"', preis = '"+neuerPreis+"' WHERE artikelnr = "+gewünschteArtikelnr+"" ;
79 Connection conn = verbindungHerstellen();
80 PreparedStatement pst = conn.prepareStatement(sql);
81 pst.executeUpdate();
82 } catch(Exception f) {
83 System.out.println("Fehler beim Aktualisieren der Attribute: "+f);
84
85 } finally {
86 System.out.println("Informationen der Tabelle erfolgreich Aktualisiert.");
87
88 }
89
90 }
91
92 public static Vector<String> infoAbrufen() throws Exception {
93 try{
94 Connection conn = verbindungHerstellen();
95 String query = "SELECT * FROM beispiel";
96 PreparedStatement pst = conn.prepareStatement(query);
97
98 ResultSet erg = pst.executeQuery();
99 //Vector<String> selectInfo = new Vector<String>();
100
101 while(erg.next()) {
102 Vector<String> selectInfo = new Vector<String>();
103 selectInfo.add(erg.getString("artikelnr"));
104 selectInfo.add(erg.getString("name"));
105 selectInfo.add(erg.getString("preis"));
106
107 System.out.println(selectInfo);
108
109 }
110 System.out.println("Informationen Erfolgreich abgerufen");
111 } catch(Exception f) {
112 System.out.println("Beim Abrufen der Informationen ist ein Fehler unterlaufen: " +f);
113
114 }
115 return null;
116 }
117
118
119
120
121public static void trySelect() throws Exception {
122 try{
123 Connection conn = verbindungHerstellen();
124 String var1 = JOptionPane.showInputDialog("Suchen Sie 'artikelnr' 'name' oder 'preis': ");
125 String var2 = JOptionPane.showInputDialog("Was ist ihnen bekannt? 'artikelnr', 'name' oder 'preis': ");
126 String par1 = JOptionPane.showInputDialog("Geben Sie den gesuchten Parameter ein: ");
127 String query = "SELECT "+var1+" FROM beispiel WHERE "+var2+" = '"+par1+"'";
128 PreparedStatement pst = conn.prepareStatement(query);
129
130 ResultSet erg = pst.executeQuery();
131 //Vector<String> selectInfo = new Vector<String>();
132
133 while(erg.next()) {
134 Vector<String> selectInfo = new Vector<String>();
135 selectInfo.add(erg.getString(var1));
136
137 System.out.println(selectInfo);
138
139 }
140 System.out.println("Informationen Erfolgreich abgerufen");
141 } catch(Exception f) {
142 System.out.println("Beim Abrufen der Informationen ist ein Fehler unterlaufen: " +f);
143
144 }
145}
146
147}