DB Couloumn reserverd keyword

OnDemand

Top Contributor
Moin zusammen,

hab ein Problem.. Möchte ein stinknormales INSERT INTO machen, leider hat die Datenbank einige Spalten, die wie reservierte Keywords von mysql. Somit klappt es nicht. Habe schon versucht es zu maskieren mit
oder "left" aber klappt nicht. Hat jemand ne Idee?

ZB:

INSERT INTO table(id, left, right, level) VALUES(1,15,23,0)

Danke vielmals!​
 

OnDemand

Top Contributor
Hi kneitzel, nö geht leider nicht :/ Normale " und auch ' versucht :(

EDIT: Jepp! Backticks klappt. Noch nie benutzt die Taste, endlich hat sie eine sinnvolle Funktion :D
 
K

kneitzel

Gast
Für die " musst Du ANSI_QUOTES als mode setzen. Und Du musst aufpassen - das ist kein single quote sondern ein Backtick. Also nicht das ' welches Du wohl mit Shift # erzeugst sonder das ` welches auf der Taste mit den ´ und ` sein dürfte. (Kann natürlich je nach Tastaturlayout unterschiedlich sein.)
 

OnDemand

Top Contributor
Super danke! So viele verschiedene Zeichen. Hat jemand noch ne Idee, warum man keine SQL Funktionen in das Insert schrieben kann? Kann ich schon, nur passiert nix. ZB Eine spalte "currentDate" mit DateTime 000-00-00 00:00 Format und folgendem Insert:

INSERT into table (id, datetime) VALUES(1,CURRDATE())

In der DB kommt 0000-00-00 00:00 an :(
 

OnDemand

Top Contributor
Prepeared Stmt geht leider nicht,darf nicht benutzt werden :( Dann kann ich ja ein Date date = new Date nehmen und entsprechend formatieren oder?
 
K

kneitzel

Gast
Ich selbst nutze MySQL nicht besonders viel, aber hier würde ich einmal prüfen, in wie weit Du mysql nicht so nutzen kannst, dass Fehler direkt als Fehler zurück kommen. Bei so einem falschen Aufruf würde ich immer eine Exception im Code (Also DB wirft einen Fehler) bevorzugen vor verfälschten Daten.

MySQL scheint da öfters mal Fehler "verzeihen" zu wollen, was die Datenbank in meinen Augen schon fast unbrauchbar macht (für professionelle Arbeiten). Hatten da vor nicht zu langer Zeit schon einen Thread wo der TE Probleme hatte, weil er nicht alle Pflichtfelder beim INSERT angegeben hatte was wohl auch schon funktioniert hatte und halt nur jetzt (auf Grund eines anderen Modus) Fehler brachte.

Also in so einen Modus darf man aus meiner Sicht eigentlich nie kommen. Evtl. willst Du das einmal etwas recherchieren oder frag in einem anderen Thread einmal nach wenn Du da nichts finden solltest. (Hättest Du da einen Fehler bekommen, dann hättest Du das ja im nu selbst gelöst denke ich mal!)
 
Ähnliche Java Themen

Ähnliche Java Themen

Neue Themen


Oben