0

私は自分の会社のためにいくつかの基本的なテーブルを作成してきましたが、この小さな問題に遭遇しました。

このコードを hello などの通常の名前で送信すると正常に動作しますが、テーブルを「inner」または「Inner」と呼ぶと動作しません。

$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";

これがなぜなのか誰か教えてもらえますか?私の唯一の仮定は、inner が結合の予約語であるということです。

4

2 に答える 2

3

inner はおそらく単なる予約語です (「inner join」を参照してください)。これに対抗するために名前にバッククォートを使用します (" `inner` ")

于 2013-10-24T11:51:32.643 に答える