Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

JDBC-Statement um MYSQL-Datenbank zu erweitern

Empfohlene Antworten

Hallo zusammen!

Ich versuche gerade mit dem JDBC-Interface ein sql-Befehl so einzubinden, das er mir die Datenbank erweitert.

Ich hab das jetzt mal so eingebunden:

String stringSelect = "insert into pet (name, besitzer) values(5,'testwert');";

Statement stmtSelect = con.createStatement();

Die Tabelle heißt "pet". die Spalten "name" und "besitzer".

Es funktioniert aber leider nicht.

Kann mir jemand sagen woran es liegen könnte?

Habe ich vielleicht was vergessen??

Grüße

Ladon

Was genau funktioniert denn nicht?

Erhälst du eine Exception? Wenn ja, welche mit welchem Stacktrace? Oder läuft alles durch und in der Tabelle wird lediglich dein neuer Datensatz nicht hinzu gefügt?

"Nummer 5 braucht Input."

Es wird einfach der Datensatz nicht eingefügt.

Sonst ist alles ok.

Er gibt mir auch die Tabelle ganz normal aus.

...eben nur ohne den neuen Datensatz.

Du belässt es doch hoffentlich auch nicht nur bei der Deklaration deines SQL-Strings und deines Statements, oder!?

...Jetzt mal ganz von der Benamsung deiner Attribute abgesehen (machst ein Update und benennst es stringSelect)... die Benennung der Attribute ist ja im Endeffekt auch vollkommen egal...

Was ich eigentlich sagen will: Du "feuerst" also nach der Deklaration auch das Statement ab...?

stmtSelect.executeUpdate(stringSelect);

Ich frage deshalb, weil du es oben nicht gemacht hast.

Servus,

hast Du irgendwo auch ein statement.execute...(); stehen?

So hast Du zwar ein Statement erzeugt, und einen Insert-String, aber Du feuerst das Ding nirgends ab.

Peter

Noch ne Frage...

Er gibt mir auch die Tabelle ganz normal aus.
Wer ist eigentlich "Er"? Dein Programm, das du geschrieben hast oder ein SQL-Werkzeug, mit dem du die Datenbank pflegst?

Wenn Ersteres der Fall ist, dann könnte es auch sein, dass "Er" keine Änderung anzeigt, weil "Er" über die Änderung nicht informiert wird und entsprechend kein Update in der Anzeige macht.

Wenn Letztere der Fall ist, dann wurde tatsächlich kein neuer Datensatz in deine Tabelle eingefügt.

..stimmt..ich habe tatsächlich kein execute drin.. :-))

ok. zu meiner verteidigung muss ich sagen das es das erste mal ist wo ich mit jdbc arbeite...

beim abrufen der datenbank klappt es ohne execute. darum war mir nicht klar, das ich das brauche..

wo muss ich dann den befehl einsetzen?

ok :-)

ich habs jetzt ...

war wirklich nur desswegen.. :-)

Danke!

beim abrufen der datenbank klappt es ohne execute. darum war mir nicht klar, das ich das brauche..

Das nehm ich Dir nicht ganz ab...

auch eine Query musst Du executen

gruss

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.