Problem mit Datentyp Blob[geloest]

  • Themenstarter Themenstarter sw33tlull4by
  • Beginndatum Beginndatum
S

sw33tlull4by

Guest
Hi!
Ich hab ein Problem mit einer Query.
Es ist nur ein Detail aber ich komm nicht drauf.
Folgende Query Funktioniert(key ist hier Primarykey und Autoincrement)
Code:
"insert into pictures(image) value('".mysql_real_escape_string($data)."')"
diese query funktioniert komischerweise nicht(key ist hier Primary key und auch mal nicht)(testweise so angelegt)
Code:
"insert into pictures(key,image)values(1,'".mysql_real_escape_string($data)."')"
$data ist eine Variable welche mittels PHP befuellt wird.
Read binary ist der Lesemodus fuer diese Datei.

image ist vom Typ Blob und key ist ein Integer.

Fehlermeldung ist 1064

Das komische dabei ist das ich wenn ich die gleiche Syntax fuer insert anwende und der Datentyp Blob nicht beteiligt ist dann bekomme ich keine Fehlermeldung und alles laeuft wunderbar.
Weiss jemand was da schief laeuft,bzw ich falsch mache?
 
Code:
You will get a MySQL query syntax error number 1064 when you incorrectly use a reserved word in your query such as "when" or "order".

Folglich verwendest du ein Wort, das du an dieser Stelle nicht verwenden darfst. Ich denke es liegt an dem fehlenden Leerzeichen und der Verwendung von key als Namen. Versuchs mal so:

Code:
"insert into pictures(´key´,´image´) values (1,'".mysql_real_escape_string($data)."')"
 
Leider hat das mit den Anfuehrungszeichen nicht geklappt, aber eine aenderung der tablenamen hat geholfen.
Vielen dank
 
Das ist auch kein Anführungszeichen, sondern ein Backtick (Shift + Taste neben dem "ß" = `)

mfg, metax.
 
Original von metax.
Das ist auch kein Anführungszeichen, sondern ein Backtick (Shift + Taste neben dem "ß" = `)

mfg, metax.

Ich bin mir nicht 100% sicher, aber bei Column- und Table-Namen muss man doch Backticks benutzen, oder?
 
Original von T-Moe
Ich bin mir nicht 100% sicher, aber bei Column- und Table-Namen muss man doch Backticks benutzen, oder?
Ja. In deinem Codebeispiel war ja auch alles OK.
Ich vermute mal, sw33tlull4by hat deine Backticks als Apostrophen gelesen; deswegen hat's bei ihm nicht funktioniert.

mfg, metax.
 
Zurück
Oben