Forum > Webbutveckling relaterat > Databaser och SQL
Hejsan, jag har träffat på ett mystigst problem angående sql insert into syntax error..
Detta är error texten som kommer upp: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'by, text, date)VALUES('admin', 'test', '3 Sep - 00:50')' at line 1
Här är filens kodning:
<? mysql_connect("...", "...", "...")or die("cannot connect");
mysql_select_db("...")or die("cannot select DB");
$text=$_POST['text'];
$by=$_POST['by'];
$date=date('j M - H:i');
mysql_query("INSERT INTO stream (by, text, date)VALUES('$by', '$text', '$date')")or die(mysql_error()); ?>
Förstår inte vad felet är.. hjälp!
| Skriv utLöste det, konstigt nog var jag tvungen att ha en sånhär (`) framför och efter stream och by, text, date.. såhär:
mysql_query("INSERT INTO `stream` (`by`, `text`, `date`)VALUES('$by', '$text', '$date')")or die(mysql_error()); ?>konstigt.. Men nu funkar det iallafall :D
Varför du behöver ha ` runt ordet "by" är för att "by" är ett reserverat ord i MySQL. Tror ärven "stream" är ett reserverat ord i mysql.
Man ska undervika att använda reserverade ord som kolumnnamn.
Okey, tack det var bra att veta för framtiden tack chrille!:)
Du tror inte du har svaret till detta också ?:)