无法创建mySQL表

时间:2015-06-03 06:12:47

标签: php mysql

我正在尝试创建一个表,如果它在我的数据库中不存在。为此,我正在运行这个按预期工作的测试:

if ($mysqli_connection->connect_error) {
    echo "Not connected, error: " . $mysqli_connection->connect_error;
}//<------forgot

但是当我尝试创建表本身时出现了问题,这给了我以下错误: 查询问题:$conn = mysql_connect("localhost", "twa222", "twa222bg"); mysql_select_db("airline222", $conn) or die ("Database not found " . mysql_error() ); $val = mysql_query("SELECT 1 from '$FLIGHTID'");

这是尝试生成表的代码

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 ''passenger' SMALLINT NOT NULL, 'booking' CHAR(6), 'seat' VARCHAR(3))' at line 2

我原本以为是“。$ FLIGHTID”。这导致了问题,但当我改变它只是ABC时我仍然有同样的错误。

谁能看到我哪里出错了?

修改 使用ABC时我的SQL输出是:

创建表ABC(乘客SMALLINT非空主键,预订CHAR(6),座位VARCHAR(3))

不使用ABC就是:

CREATE TABLE(乘客SMALLINT NOT NULL PRIMARY KEY,预订CHAR(6),座位VARCHAR(3))

1 个答案:

答案 0 :(得分:4)

您使用单引号arround列名称是不允许的。单个qoutes表示里面的值是litaral:

变化:

$val = mysql_query("SELECT 1 from '$FLIGHTID'");

为:

$val = mysql_query("SELECT 1 from $FLIGHTID");

使用mysqli_*PDO代替弃用的mysql_* API。