无法创建名为inner的表

时间:2013-10-24 11:50:16

标签: php mysql sql

我一直在为公司创建一些基本表格,并遇到了这个小问题。

当我使用普通名称(例如hello等)提交此代码时,它工作正常,但当我将表调用为“内部”或“内部”时,它不想工作。

$con = mysqli_connect($hostname, $username, $password, $db_name) or die(mysql_error()); 
if (mysqli_connect_errno())
    {
        echo "Failed to connect to MySQL: " . mysqli_connect_error();
    }
mysqli_query($con,"CREATE TABLE inner   ( 
                                            inner_pck_dimension             varchar                         (14),
                                            inner_pck_weight                Int                             (5),
                                            inner_pck_barcode               varchar                         (15),
                                            inner_package_paper             Int                             (5),
                                            inner_package_plastic           Int                             (5),
                                            inner_package_other             varchar                         (20)
                                        )");
    echo "Table Created";

谁能告诉我为什么会这样?我唯一的假设是内部是连接的保留字。

2 个答案:

答案 0 :(得分:3)

内心可能只是一个保留词(参见“内部联接”)。使用反引号来反击这个(“内部”)

答案 1 :(得分:1)

是的,我建议不要使用表名的保留字,但是如果启用了ANSI SQL模式,那么通常可以用“内部”来避免这种情况,或者对于反向标记,你可以用“内部”来避免这种情况

回答this answer

的解释