Daten aus MySQL Datenbank per Java abfragen?
Hallo, ich wollte mal fragen, ich habe zb ne ganz simple Datenbank in MySQL mit einer Table.
Jetzt habe ich zB noch eine File.java und in der würde ich gerne zufällig aus dieser Datenbank, Row auswählen und printen, geht sowas?
und wenn wie geht sowas genau?
1 Antwort
Zuerst einmal brauchst du den JDBC-Treiber von MySQL, der dir eine Schnitttstelle liefert, um mit der Datenbank zu kommunizieren. Entweder bindest du dir die JAR separat in den Classpath deines Projekts ein oder du nutzt Maven/Gradle/o.ä..
Eine Dokumentation zum Treiber findest du in der MySQL-Dokumentation. Ebenso gibt es Tutorials wie dieses von Vogella, welche ein einfaches Beispielprogramm zeigen.
Für die Kommunikation mit der Datenbank werden üblicherweise SQL-Befehle formuliert und an die Datenbank geschickt, welche diese wiederum für sich auswertet. Wenn du mit SQL noch nicht vertraut bist, wäre dahingehend ein Tutorial hilfreich. In der oben schon erwähnten MySQL-Dokumentation gibt es ebenfalls ausreichend Material zu SQL.
Eine zufällige Zeile könnte man sich anschließend auf zwei Wegen heraussuchen. Entweder man liest erst (via SELECT) alle Einträge in ein Array / eine Liste und ermittelt dann in Java einen zufälligen Index oder man formuliert eine SQL-Anfrage, die ihre Auswahl zufällig sortiert und dann alle Einträge auf den ersten Datensatz herausfiltert.
SELECT * FROM yourTableName ORDER BY RAND() LIMIT 1;