Datenbanken in Java

GhostfaceChilla

Bekanntes Mitglied
Hallo Leute :)
Ich wollte mich nun einmal näher mit Datenbanken beschäftigen und habe mal ein bisschen rumgeschaut aber i-wie werde ich nicht aus alelm schlau.
Daher wollte ich mal fragen:
1. Wie erstelle ich überhaupt eine Datenbank mit Daten?(Programmiere ich sie oder gibt es Tools zur einfachen Erstellung einer Datenbank?)
2. Docke ich an alle Datenbanken gleich an, also
Java:
Class.forName(), DriverManager.getConnection("...")
3. Was brauche ich noch um eine Datenbank zu verwalten?

Ich hoffe ihr könnt mir ein bisschen helfen. Danke shconmal im Voraus ;)

-GhostfaceChilla-
 

turtle

Top Contributor
1. Wie erstelle ich überhaupt eine Datenbank mit Daten?(Programmiere ich sie oder gibt es Tools zur einfachen Erstellung einer Datenbank?)
Kommt drauf an, wie deine bevorzugte Methode zum Zugriff ist. Bei Hibernate/JPA gibt es Verfahren aus denen die DB erstellt werden kann. Ich rate dir aber, dies selber zu machen und es mit SQL zu machen.
Daten in eine DB spielst du ebenfalls per SQL ein. Daher bin ich ein Fan von myBATIS, weil damit direkt mit SQL mit der DB gearbeitet werden kann. Gute Java-DB sind beispielsweise H2, HSQLDB, oder Derby.
2. Docke ich an alle Datenbanken gleich an, also
Java Code: Quelltext in neuem Fenster öffnen
Class.forName(), DriverManager.getConnection("...")
Diese Zeile ist neuerdings nicht mehr notwendig, also vergesse sie gleich wieder.
3. Was brauche ich noch um eine Datenbank zu verwalten?
Ein gutes SQL-Tool ist hilfreich und ich nehme immer Squirrel.
 

GhostfaceChilla

Bekanntes Mitglied
2. Docke ich an alle Datenbanken gleich an, also
Java Code: Quelltext in neuem Fenster öffnen
Class.forName(), DriverManager.getConnection("...")
Diese Zeile ist neuerdings nicht mehr notwendig, also vergesse sie gleich wieder.
/"]Squirrel[/URL].
Was heißt diese Zeilen sind nicht mehr notwendig wie funktioniert das ab jetzt?
Und gibts es sowas wie eine Entwicklungsumgebung?

-GhostfaceChilla-
 
Zuletzt bearbeitet:

Tobse

Top Contributor
Ich habe das ganze übers web kennengelernt und bin mit der Kombo PHP-MySQL sehr vertraut, deshalb das ganze am Beispiel von SQL Servern.
Den häufigsten aufbau von Datenbanken wirst du etwa so vorfinden:

1. Ein datenbankserver, der die daten hat und auf dem eine Software läuft, etwa MySQL oder OracleDB
2. Eine Software, um den zu verwalten; sei es Access, Squirrel (wie gennannt) oder phpMyAdmin

Einen MySQL-Server einzurichten ist nicht wirklich schwer und mit einem lokalen phpMyAdmin kannst du da auch bequem Tabellenstrukturen anlegen und verwalten. Verbinden kann sich ein Java programm über den entsprechenden SQL-Driver den du auf der Hompage der Server-Software, die du verwendest, finden wirst. Dann kannst du dich per DriverManager#getConnection anmelden und Statements abfeuern ;)
 

GhostfaceChilla

Bekanntes Mitglied
Vielen Dank an euch alle :)
Bin jetzt im Internet auf MySQL gestoßen, heir gibt es auch ein Programm namens "Workbench" mit dem man anscheinend Datenbanken und Tabellen erstellen kann(mit grafischer Oberfläche).
Könnt ihr mir sowas empfehlen?Also wäre es ok mit dieser Workbench die Datenbank zu erstellen oder macht man das eher nicht über dieses Programm?

-GhostfaceChilla-
 

Tobse

Top Contributor
Ob du die Struktur jetzt per Oberfläche erstellst oder von Hand ist für die Datenbank total egal; die Oberfläche macht auch nix anderes als da Queries rausschicken. Dazu ist eine graphische oberfläche für sowas die Bequemlichkeit des Jahrtausends im Vergleich zum Tippen der Queries von Hand.

[EDIT]Ich bin es aber gewohnt, die strukturen mit phpMyAdmin zu erstellen; die Workbench kenne ich nicht aber wenn sie von MySQL selbst ist kann sie sooo schlecht eigentlich garnicht sein.[/EDIT]
 
Zuletzt bearbeitet:

Phash

Top Contributor
die MySQL Workbench ist ziemlich ausgefeilt, und ich mag sie.

Der ERM Editor ist echt sehr brauchbar - man kann seine Datenbank komplett in der WorkBench designen, macht dann ein forward Engineering.
Geht ins Eclipse, nimmt die Hibernate Tools, macht ein backward engineering auf die Datenbank und hat alle Entitäten mitsamt Annotations im Code :)


Da ich hier die Workbench nicht benutzen kann, schreib ich meine Entities jetzt wieder mit der Hand, lass Hibernate in die DB pushen, und nehme nach Abschluss meiner Entwicklungsarbeit die Datenbank um mir ein DDL zu erstellen, welches ich mit ausliefere
 

turtle

Top Contributor
Und gibts es sowas wie eine Entwicklungsumgebung?
Du bemerkst ja bereits selber, das DB mit einer IDE etwas ist, was genau aufgesetzt werden soll und verwendest Hibernate-Tools und kümmerst dich um Schema-Migration, Insbesondere spielen hier noch eine Menge anderer Dinge eine Rolle, als "nur" eine Java-IDE, ein DB-Schema, etc.

Häufig möchte man eine DB für ein Projekt entwickeln und deshalb müssen Dinge wie Migration der DB beachtet werden. Da ist das Aufsetzen eines Schemas mit Befüllen einer initialen Struktur nur EIN Schritt. Die Unterstützung einer DB beim Kunden mit neuer Struktur ohne die Daten zu löschen ein anderer Schritt. Beispielsweise kümmert sich ein Tool wie Flyway um eine Unterstützung des Schemawechsels in einer DB.

Daher halte ich das Zusammenklicken einer DB über Oberflächen für wenig hilfreich, weil DB-Design kompilizierter ist. Wenn du z.B. mit der 3. Normalform nichts anfangen kannst, mache dich da mal kundig.

Daher erstelle ich DB-Schemas immer per SQL (manuell) und befülle diese ebenfalls über SQL-Skripte. Deswegen "hasse" ich es auch, wenn Tools eine Datenbank generieren, denn meistens müssen ja Daten aus einer alten Version überleben.

Das ein Java-Entwickler oft an solche Dinge nicht so denkt, ist normal, aber eine DBA-Sichtweise auf ein DB-Projekt auch nicht falsch. Und da ist es halt oft so, dass ein DBA keine Hibernate-Kenntnisse und nichts von Java versteht.
 

Shandnyar

Mitglied
So nebenbei. Mann braucht nicht mehr
Java:
Class.forName()
zu benutzen
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Java Datenbanken Datenbankprogrammierung 1
M Feedback für neues Buch über "Java und Datenbanken" erwünscht Datenbankprogrammierung 8
O apache derby in eclipse für Datenbanken einbauen Datenbankprogrammierung 3
R Datenbanken erstellen Datenbankprogrammierung 3
I Hilfe zu Multidimensionalen Datenbanken Datenbankprogrammierung 1
T Lagerprogramm mit Datenbanken Datenbankprogrammierung 21
K Verschiedene Datenbanken - Was sollte ich lernen? Datenbankprogrammierung 11
M SQLite Zwei Datenbanken synchronisieren Datenbankprogrammierung 8
F MySQL+ Netbeans: Datenbanken mit Automatisch generierten Entity Classes get und set Datenbankprogrammierung 2
M Hash in Bezug auf Datenbanken unklar Datenbankprogrammierung 3
M Datenbankschema in relationalen Datenbanken Datenbankprogrammierung 3
Ananaskirsche Verschlüsselung von Datenbanken Datenbankprogrammierung 1
T Datenbanken-PDF Datenbankprogrammierung 15
Y Derby/JavaDB Benutzung von eingebetteten Datenbanken Datenbankprogrammierung 4
K Zwei Datenbanken miteinander auf Unterschiede vergleichen Datenbankprogrammierung 2
T 2 Tabellen aus 2 Datenbanken miteinander vergleichen Datenbankprogrammierung 6
B Datenbanken schützen vor Zugriff Datenbankprogrammierung 3
M Beziehungsfrage Datenbanken Datenbankprogrammierung 5
L Große Datenbanken - Designproblem Datenbankprogrammierung 3
E Zwischen Datenbanken wechseln Datenbankprogrammierung 13
L Synchronisieren von 2 Datenbanken Datenbankprogrammierung 2
T a x b x c x....n Matrizen in Datenbanken Datenbankprogrammierung 5
P DatenBanken mit Netbeans erstellen Datenbankprogrammierung 17
K Grundfragen zu Datenbanken Datenbankprogrammierung 28
H Rechnen in Datenbanken - JDBC Mittel der Wahl? Datenbankprogrammierung 32
J Unterstützung für verschiedene Datenbanken Datenbankprogrammierung 2
T MySQL Auflistung aller Datenbanken??? Datenbankprogrammierung 9
J In viele verschiedene Datenbanken einfügen Datenbankprogrammierung 3
C MySQL Hibernate mit 2 Datenbanken Datenbankprogrammierung 12
V Hibernate mit 2 Datenbanken Datenbankprogrammierung 3
W MySQL Datenbanken auslesen Datenbankprogrammierung 3
M prinzipielle Frage zu Datenbanken und jars ... Datenbankprogrammierung 2
R PreparedStatement mit verschiedenen Datenbanken Datenbankprogrammierung 2
brainray Bei MySQL alle Datenbanken eines Servers abfragen Datenbankprogrammierung 3
R 1 Programm, 2 Datenbanken Datenbankprogrammierung 15
S Standard für Datenbanken Datenbankprogrammierung 3
R Datenbanken, Tabellen normalisieren. Datenbankprogrammierung 1
G Datenbanken abgleichen Datenbankprogrammierung 4
P Insert into mit zwei Datenbanken Datenbankprogrammierung 3
G Effektive Methode zum durchsuchen von SQL-Datenbanken Datenbankprogrammierung 7
M Datenbanken synchronisieren Datenbankprogrammierung 2
P Datenbanken auswahl, anforderungen Datenbankprogrammierung 29
K Daten in Datenbanken einfügen Datenbankprogrammierung 6
G H2: Erstellen von Datenbanken verhindern Datenbankprogrammierung 2
Y Datenbanken Datenbankprogrammierung 6
M Maximale Kapazität von Datenbanken Datenbankprogrammierung 2
S Objektorientierte Datenbanken Datenbankprogrammierung 4
F Zwischen Datenbanken wählen auf SQL-Server Datenbankprogrammierung 4
G Umlaut-Problem mit Firebird Datenbanken Datenbankprogrammierung 8
I Datenbanken mit MySQL einrichten Datenbankprogrammierung 11
G Step-by-Step Anleitung für Datenbanken Datenbankprogrammierung 3
N Abfrage über zwei Datenbanken Datenbankprogrammierung 9
M Treiber für mysql Datenbanken Datenbankprogrammierung 2
Juelin Java und MySQL MariaDB - WHERE-Klausel Datenbankprogrammierung 17
P Reicht finally nicht um DB connections zu schließen in (altem) Java? Datenbankprogrammierung 4
A Java DB Server lässt sich nicht starten Datenbankprogrammierung 3
TheSkyRider MySQL Datenbankzuordnung in Verbindung mit Java Datenbankprogrammierung 7
U SQL Server mit Java verbinden Datenbankprogrammierung 5
D SQLite Datenbank in Android Studio (Java) durchsuchen Datenbankprogrammierung 3
TH260199 Java-Programm. Probleme bei der Umsetzung von einer Kontaktverwaltung. Datenbankprogrammierung 7
S Das printen der Ausgabe des Oracle-SQL-Statements in der Java-Eclipse-Konsole funktioniert nicht Datenbankprogrammierung 6
Zrebna Wie mittels Hibernate eine Join-Tabelle als eigene Java-Klasse erstellen? Datenbankprogrammierung 5
Zrebna Noobfrage: Konvertierung von SQL-Datentyp 'timestamp with time zone' in Java-Datentyp Datenbankprogrammierung 3
Zrebna Lediglich interne DB-Verbindungen (Connections) auslesen - mittels Java Datenbankprogrammierung 4
berserkerdq2 Was genau muss ich bei date eingeben, wenn ich in Java eine Spalte definiere, die date ist? Datenbankprogrammierung 1
berserkerdq2 Was kann passieren, wenn ich in java einstelle, dass der Fremdschüssel ein Attribut ist, welches selber kein Primärschlüssel ist? Datenbankprogrammierung 4
berserkerdq2 Foreign key einstellen java Datenbankprogrammierung 4
nikgo Java SQL Ausgabe in Liste o.ä. abspeichern um mit dem Ergbnis "zu arbeiten"? Datenbankprogrammierung 5
S Datenbankprogrammierung in Java unter NetBeans 12 funktioniert nicht! Datenbankprogrammierung 1
Beginner22 Zugriff auf Datenbank aus Java über mariadb Datenbankprogrammierung 3
S ODBC Treiber in Java Editor einbinden Datenbankprogrammierung 3
H Oracle Resize eines Images in Java und Rückgabe des Image als BLOB an die Oracle Datebank Datenbankprogrammierung 14
H Java Class zum komprimieren von Jpeg-Images zum Einbinden in Oracle DB - Bild als blob (in und out) Datenbankprogrammierung 23
V SQLite java.sql.SQLException: no such column: Datenbankprogrammierung 18
B Wie kopieren ich eine Spalte von einer Tabelle in eine andere Tabelle SQLite durch java code? Datenbankprogrammierung 26
D Daten aus der Firebase-Echtzeitdatenbank abfragen und in Variablen speichern (JAVA) Datenbankprogrammierung 0
Slaylen Java List Suchen mit eigenem Generischen Datentyp Datenbankprogrammierung 10
N java sql abfrage bestimmer Datumszeitraum Datenbankprogrammierung 9
D SQL Server Android App: 'int java.lang.String.length()' on a null object reference Datenbankprogrammierung 15
P USER Management in SQL übergreifend auf JAVA Programm Datenbankprogrammierung 1
H MySQL Verbindung Datenbank und Eclipse (Java) Datenbankprogrammierung 5
N Java Abfrage über GUI, Daten hinzufügen Datenbankprogrammierung 54
N Java, sql, jar, JDBC-Treiber in Classpath Datenbankprogrammierung 8
N java SQL JAR - Probleme Datenbankprogrammierung 18
N SQL Datenbank Spalte in Java Array Datenbankprogrammierung 2
N SQL-Statement Java Variable in SQL DB einfügen Datenbankprogrammierung 1
S Verbindung von einer Excel Datei zu Java Datenbankprogrammierung 2
H suche eine Login system Bibliothek für Java Datenbankprogrammierung 5
T Java Spiel Daten speichern Datenbankprogrammierung 1
C Java MySQL check if value exists in database Datenbankprogrammierung 2
N Sqlite DB mit Java wird auf Linuxsystem nicht gefunden Datenbankprogrammierung 9
L Mybatis Datenbankabfragen in Java Datenbankprogrammierung 1
H MariaDB-Zugriff mittels Java SE Datenbankprogrammierung 3
J Java fügt Datensätze ein aber diese werden nicht richtig abgefragt Datenbankprogrammierung 3
S Datenbank MySQL und Java Datenbankprogrammierung 8
S Beispiel-Blockchain + GUI mit Java erstellen Datenbankprogrammierung 0
P Adressadministration mit Java und mySQL Datenbankprogrammierung 14
Trèfle SQLite SQL-Java Änderungen ausgeben Datenbankprogrammierung 1
Dimax MySQL Maximale Datenlänge für eine Spalte einer Datenbank in java ermitteln Datenbankprogrammierung 15
A MySQL Select und Insert in Java Datenbankprogrammierung 15

Ähnliche Java Themen


Oben