MySql插入错误

时间:2012-01-17 05:07:36

标签: php mysql mysql-error-1064

我有一个mysql查询如下:

$sql = "
        INSERT INTO
            tbl_stopage
        SET
            bus_id = '$bid',
            stopage_name = '$info[stopage_name]',
            fare = '$info[fare]',
            from = 'Ghy'
    ";

但是当我尝试执行上述查询时,它显示以下错误:

DB Error.
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 'from = 'Ghy'' at line 7
INSERT INTO tbl_stopage SET bus_id = '1', stopage_name = 'Dergaon', fare = '123', from = 'Ghy'

2 个答案:

答案 0 :(得分:4)

SQL FROM中的

是一个保留字,尝试使用from使用正确的mySQL转义字符,我相信是`。

此外,数据库中的所有“数字”值是否为实际数字?如果是这样,你不需要围绕它们的抽动(')。

总的来说,如果不是太晚,你可以简单地通过改变表不使用FROM,SELECT,WHERE,GROUP BY,ORDER BY等关键字来避免未来的危险。

答案 1 :(得分:1)

$sql = "INSERT INTO 
        tbl_stopage (`bus_id`,`stopage_name`,`fare`,`from`)               
        VALUES ('$bid','$info[stopage_name]','$info[fare]','Ghy')";

但最好使用准备好的陈述。