Java MySQL ist das Richtig?

... komplette Frage anzeigen

5 Antworten

Ok, dann fangen wir mal an.

public static ...

Warum statische Funktionen? Nein.

.query("SELECT * FROM Codes WHERE Code= '"+ code +"'");

Verwende bitte keinen injizierbaren Code, sondern Prepared Statements (siehe: http://docs.oracle.com/javase/tutorial/jdbc/basics/prepared.html).

if(rs.next()) {

Davor prüfen, ob rs == null.

catch (SQLException e) { 
}

Die Exception solltest du entweder Loggen (siehe SLF4j) oder weiterwerfen.

if(!(codeExists(Code))) {
API.mysql.update

Mache auch hier API zu einer instanziierten Klasse und aktualisiere das Feld. Statischer code ist hier total unnütz und führt nur zu Problemen beim Debugging und der Nebenläufigkeit. Das wird so nicht funktionieren, sobald mehrere Transaktionen (nahezu) gleichzeitig auf der Datenbank laufen.

public static boolean codeExists(String code) {
try {
ResultSet rs = API.mysql.query("SELECT * FROM Codes WHERE Code= '"+ code +"'");
if(rs.next()) {

Auch hier wird nicht geprüft, ob "code" null ist. Mögliche NullpointerException.

Antwort bewerten Vielen Dank für Deine Bewertung

Ob sie richtig sind können wir dir nicht sagen, weil du uns nicht sagst, was sie denn machen sollen. Vielleicht solltest du dich da lieber an ein Minecraft Forum wenden.

Antwort bewerten Vielen Dank für Deine Bewertung

Was soll sie den machen?

Antwort bewerten Vielen Dank für Deine Bewertung

Wie wärs, wenn du mal in nem, Coding Forum nachfragst und etwas Hintergrundinformation dazu nennst.

http://stackoverflow.com/ da bekommst du zu 100% deine gesuchte Antwort.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von KnusperPudding
29.05.2016, 16:08

Bei Stackoverflow gibt es massig Ärger wenn das Problem ein Syntaxfehler ist.

Fragen wie diese befinden sich auf absolutem Anfänger-Niveau und können auch von der GuteFrage Community beantwortet werden.

0

Eigentlich lädt man das auf hastebin hoch und schreibt wenigstens dazu was der Code machen soll.
Aber ich sehe auch schon dass da so einige Dinge drinnen sind die man nicht tun sollte.

Antwort bewerten Vielen Dank für Deine Bewertung