MySQL Daten in die Datenbank eingeben via Java Programm

Eddie

Mitglied
Hallo zusammen,

ich habe die Aufgabe, ein Java Programm zu schreiben, das mit einer MySQL-Datenbank interagieren soll. Einen Client halt.
Eigentlich komm ich glaub ganz gut damit zurecht, nur häng ich gerade an einer Stelle und ich hoffe, ihr könnt mir weiterhelfen.Also folgendes:
Ich habe eine Methode geschrieben, die eine neue Addresse anlegen soll:
Java:
public void createAddress (String street, String houseNumber, String city, String postcode, String state, 
							   String country, String phoneNumber, String mobileNumber, String faxNumber, String eMail){
		
		DbConnection conn1 = new DbConnection();
		conn = conn1.buildConnection();
		
		try {
			statement = conn.createStatement();
			String prep = "INSERT INTO address " +
					"(street,house_number,city,postcode,state,country,phone_number,mobile_number,fax_number,email_address)"+
					"VALUES ('"+street+"','"+houseNumber+"','"+city+"','"+postcode+"','"+state+"','"+
					country+"','"+phoneNumber+"','"+mobileNumber+","+faxNumber+"','"+eMail+"')";
			statement.executeUpdate(prep);
			conn.close();	
		}
		
		catch (SQLException ex) {
			System.out.println("SQLException: " + ex.getMessage());
			System.out.println("SQLState: " + ex.getSQLState());
			System.out.println("VendorError: " + ex.getErrorCode());	
		}
	}
Wenn ich die Methode nun teste, bekomm ich immer den Fehler
SQLException: Column count doesn't match value count at row 1
SQLState: 21S01
VendorError: 1136

Wenn ich allerdings das SQL-Statement direkt in die SQL-Workbench eingebe, funktioniert es.
Könnte mir einer sagen, wo das Problem liegt? Was übersehe ich?

Vielen Dank schon mal.
Gruß
Eddie

PS: zu der Tabelle "address" gehört noch eine Spalte "address_ID". Die ist allerdings Auto-Increment und müsste daher ja eigenltich automatisch mit dem richtigen Wert befüllt werden. Ich hoffe und denke, dass das auch über das Java-Programm funktioniert...
 
M

maki

Gast
Wenn man SQL manuell zusammenfrickelt/pfuscht macht man schnell manl einen fehler, abgesehen vom Sicherheitsproblem (SQL Injection).

Dir fehlt ein [c]'[/c] bei faxnumber ;)

Ansonsten wäre es besser PreparedStatements zu verwenden.
 

andiv

Bekanntes Mitglied
Du hast zwischen mobileNumber und faxNumber die ' vergessen.
Verbesserungsvorschläge:
- Schreibe eine Klasse Address, dann musst du nicht 10 Parameter sondern nur einen übergeben
- Verwende PreparedStatements (schützt auch vor SQL-Injections)
- Verwende ein ORM-Framework wie z.B. JPA
 

Eddie

Mitglied
Oh man...da sitz ich fast zwei Stunden davor und such den Fehler...wie peinlich :oops:
DANKE!
Dass Prepared Statements vor SQL-Injection schützen, wusst ich nicht. Ich glaub, das änder ich nachher gleich mal...muss ich ja die anderen Methoden auch ändern :)
Von ORM-Frameworks hab ich ehrlich gesagt noch nie was gehört.
Aber das mit der extra Klasse für address ist an sich ne gute Idee. Muss ich mal genauer drüber nachdenken, wie sich sowas machen ließe.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
E netbeans - jsp Daten in Datenbank hinzufügen Datenbankprogrammierung 2
C Datenbank anlegen und über eine Website mit Daten füllen? Datenbankprogrammierung 25
S Daten von SQLite Datenbank nutzen Datenbankprogrammierung 5
P Daten in eine mySQL Datenbank einfügen Datenbankprogrammierung 4
O mit Multi-Thread Daten aus Datenbank lesen und schreiben Datenbankprogrammierung 22
Z Finde den Fehler: Daten aus einer Access-Datenbank lesen Datenbankprogrammierung 12
S Daten aus Form in Datenbank nur einmal eintragen Datenbankprogrammierung 2
H Grosse Menge an Daten in eine Datenbank Datenbankprogrammierung 32
E Daten einer SQL-Datenbank aus Combobox in labels schreiben Datenbankprogrammierung 6
O Viele Verbindungen-Exception bei insert Daten zur MySQL-Datenbank Datenbankprogrammierung 2
D MySQL Daten werden aus Datenbank gelesen, obwohl sie dort gar nicht angekommen sind Datenbankprogrammierung 8
A Problem mit Eintragen von Daten in eine Datenbank mittels DAO Datenbankprogrammierung 4
H Daten in/aus Datenbank schreiben Datenbankprogrammierung 2
B Daten aus Datenbank holen Datenbankprogrammierung 6
N Daten aus Datenbank abfragen und anzeigen in der Praxis?? Datenbankprogrammierung 2
L CLOB-Daten werden beim Einfügen in die Datenbank geändert? Datenbankprogrammierung 5
P Daten aus MySql Datenbank lesen??? Datenbankprogrammierung 6
Dragonfire Daten aus jsp Datei in datenbank speichern Datenbankprogrammierung 15
D Vector mit Daten aus der Datenbank füllen Datenbankprogrammierung 7
G Daten werden nicht in die datenbank geschrieben Datenbankprogrammierung 6
S Daten verschlüsselt ablegen in der Datenbank mit Hibernate Datenbankprogrammierung 6
M Mit Java Data Objects Daten in einer MySQL-Datenbank manipul Datenbankprogrammierung 9
S Daten aus einer MySQL-Datenbank auslesen Datenbankprogrammierung 7
G speichern und auslesen von daten aus einer datenbank Datenbankprogrammierung 8
megachucky Woher bekomme ich "Datenbank-Daten" ? Datenbankprogrammierung 6
D Daten von Datenbank in JTable füllen... Datenbankprogrammierung 3
D Alte Daten ins neue Modell quetschen Datenbankprogrammierung 6
R Mongodb Daten werden immer überschrieben Datenbankprogrammierung 7
R Mongodb Daten in einem bestimmten Document speichern Datenbankprogrammierung 1
OnDemand Daten auf mehrere Tabellen aufteilen oder Spalten nutzen Datenbankprogrammierung 2
B Daten HSQL-DB Datenbankprogrammierung 2
V H2 ManyToMany wie speichere ich die Daten? Datenbankprogrammierung 10
thobren Projekt SQlite! Wie kann ich auf auf SQlite Daten zugreifen? Datenbankprogrammierung 4
OnDemand Daten verschlüsseln Datenbankprogrammierung 42
L Oracle Daten in Häppchen selektieren Datenbankprogrammierung 5
L Oracle Daten von Oracle zu MSSQL übertragen Datenbankprogrammierung 4
D Daten aus der Firebase-Echtzeitdatenbank abfragen und in Variablen speichern (JAVA) Datenbankprogrammierung 0
Z Ausgabe nur bestimmter Daten Datenbankprogrammierung 6
N Java Abfrage über GUI, Daten hinzufügen Datenbankprogrammierung 54
Kirby.exe Vorschläge zur Verschlüsselung von Daten in der DB Datenbankprogrammierung 2
T Java Spiel Daten speichern Datenbankprogrammierung 1
LimDul H2 Embedded DB und Gigabytes an Daten Datenbankprogrammierung 0
R Wie mit zu viele Daten umgehen? Datenbankprogrammierung 2
F MySQL Wie speichere ich Daten zeitlich abhängig? Datenbankprogrammierung 4
T Oracle Normalisierung und Daten splitten Datenbankprogrammierung 1
JG12111989 DB-Daten werden falsch dargestellt Datenbankprogrammierung 7
K H2 Daten in die H2 console DB eintragen Datenbankprogrammierung 2
L SQLite Ändern der Daten in einem UNIQUE Feld Datenbankprogrammierung 1
P JSP - Daten aus 2 Tabellen in eine neue Tabelle einfügen Datenbankprogrammierung 1
L Oracle Daten von einem Server zum andere kopieren Datenbankprogrammierung 24
L MySQL Vergleichen von Array-Inhalt, Ausgabe gleicher Daten Datenbankprogrammierung 3
W Daten in Java intern abfragen Datenbankprogrammierung 1
G MySQL Java Problem: Nullpointer Exception obwohl Daten vorhanden sind? Datenbankprogrammierung 2
W Daten aus einer Datei von einem VServer auslesen Datenbankprogrammierung 1
I MySQL Datenbankstruktur angleichen - Daten behalten Datenbankprogrammierung 7
O JDBC Daten in zwei Tabellen mit zwei foreach-Schleifen einfügen (insert into) Datenbankprogrammierung 1
P LDAP: Daten eintragen funktioniert nicht Datenbankprogrammierung 7
B MySQL LogIn Daten im Code verstecken Datenbankprogrammierung 3
F Daten verdichten Datenbankprogrammierung 0
B Daten aus DB in Word Dokument Datenbankprogrammierung 2
D Aktualisierung einer ListView mit Daten aus MySQL-DB Datenbankprogrammierung 5
D Daten posten auf RestApi (Mongodb/NoSQL) Datenbankprogrammierung 0
I Fehler bei Ausgabe der Daten aus der DB Datenbankprogrammierung 3
OnDemand MySQL Daten aktualisieren Datenbankprogrammierung 6
D Daten von einem Server in eigenem Java-Programm benutzen Datenbankprogrammierung 6
M Vergleich von Daten in verschiedenen Tabellen Datenbankprogrammierung 1
6 JBDC Daten verschlüsseln? Datenbankprogrammierung 2
F MySQL Daten ändern über Java Datenbankprogrammierung 3
G SQLite Daten aus SQLite DB in andere SQLite DB importieren Datenbankprogrammierung 4
M Daten nachträglich hinzufügen Datenbankprogrammierung 6
2 MySQL Daten aus einer Array auslesen und MySQL Statment erstellen. Datenbankprogrammierung 5
N HSQLDB Daten Auslesen Datenbankprogrammierung 3
P MySql daten in leeren jtable übertragen Datenbankprogrammierung 5
SexyPenny90 SQL Daten sortieren und top 5 ausgeben Datenbankprogrammierung 7
L Hibernat will Daten nicht einfügen??? Datenbankprogrammierung 2
B MySQL DB Daten aktualisieren Datenbankprogrammierung 9
Kenan89 Oracle Daten einer Tabelle in Array speichern Oracle Datenbankprogrammierung 10
L SQLite Daten werden nicht in die Tabelle eingefügt Datenbankprogrammierung 7
D Übersichtliche Zuweisung von Daten in Tabellen Datenbankprogrammierung 17
C ResultSet enthält nicht alle Daten Datenbankprogrammierung 4
J Daten synchronisieren in Multi-Client-Anwendungen (Hibernate) Datenbankprogrammierung 6
S JPA: DB Schema ändern und Daten nicht verlieren - wie? Datenbankprogrammierung 5
T MySQL Select: Zusammenfassen von Daten und bilden von Durchschnitt? Datenbankprogrammierung 4
F Daten in die DB hinzufügen Datenbankprogrammierung 7
H Klasse welche Mysql Daten zurück gibt Datenbankprogrammierung 18
S JPA: Problem mit Update von Daten Datenbankprogrammierung 7
M DropDownBoxen mit MySQL Daten füllen Datenbankprogrammierung 3
F ORA 17410 Keine weiteren Daten aus Socket zu lesen Datenbankprogrammierung 2
T Problem beim schreiben von daten Datenbankprogrammierung 4
G MySQL Bekomme keine Daten. Datenbankprogrammierung 7
G Daten aggregieren Datenbankprogrammierung 11
Gossi Oracle 2 Daten (Datum) vergleichen Datenbankprogrammierung 6
W MySQL Daten aus bestimmter Spalte lesen Datenbankprogrammierung 2
E MySQL Befüllen einer MySQL DB mit großen Daten Datenbankprogrammierung 6
J Doppelte Daten in Spalte, nur die erste abrufen wie? Datenbankprogrammierung 15
J Daten vergleichen Datenbankprogrammierung 10
S Daten einer Tabelle vergleichen und ggs neuen Wert einfügen Datenbankprogrammierung 8
X Daten einer DatenbankTabelle in JTable darstellen Datenbankprogrammierung 13
T Designfrage: DB-Daten direkt oder verzögert speichern Datenbankprogrammierung 2
A Daten von Webshop einlesen Datenbankprogrammierung 5

Ähnliche Java Themen

Neue Themen


Oben