CREATE TABLE SQL 查询语法错误
Syntax error on CREATE TABLE SQL query
sql 有什么问题?我不知道出了什么问题。它一直给我语法错误。
$dbh->exec ("CREATE TABLE 'test'
(col1 CHAR (64) PRIMARY KEY,
col2 CHAR (64),
col3 CHAR (64),
col4 CHAR (64))") or die (print_r ($dbh->errorInfo (), true));
我正在使用 EasyPHP,刚刚安装了它。我正在尝试使用上面的代码创建一个 table。这是它返回的错误。我多次尝试更正语法。老实说,我认为语法是正确的。与我的 EasyPHP 安装配置有关,例如 mysql 配置不正确。
Array ( [0] => 42000 [1] => 1064 [2] => 您的 SQL 语法有误;请查看与您的 MySQL 服务器对应的手册在第 1 行的 '' 附近使用正确语法的版本)
编辑:
这是我用来连接的代码:
function dbConnect ($dbname) {
$user = "root";
$pass = "";
$db = new PDO ("mysql:host=127.0.0.1;dbname=$dbname", $user, $pass);
if ($db) {
//echo "Connected to database." . "</br>";
}
return $db;
}
Table 名称不要放在引号内,更改
CREATE TABLE 'test'
^ ^
到
CREATE TABLE `test` // don't even need back ticks usually
将您的 SQL 更改为:
CREATE TABLE test
(col1 CHAR (64) PRIMARY KEY,
col2 CHAR (64),
col3 CHAR (64),
col4 CHAR (64))
试试:
$dbh->exec ("CREATE TABLE test
(col1 CHAR (64) PRIMARY KEY,
col2 CHAR (64),
col3 CHAR (64),
col4 CHAR (64))") or die (print_r ($dbh->errorInfo (), true));
sql 有什么问题?我不知道出了什么问题。它一直给我语法错误。
$dbh->exec ("CREATE TABLE 'test'
(col1 CHAR (64) PRIMARY KEY,
col2 CHAR (64),
col3 CHAR (64),
col4 CHAR (64))") or die (print_r ($dbh->errorInfo (), true));
我正在使用 EasyPHP,刚刚安装了它。我正在尝试使用上面的代码创建一个 table。这是它返回的错误。我多次尝试更正语法。老实说,我认为语法是正确的。与我的 EasyPHP 安装配置有关,例如 mysql 配置不正确。
Array ( [0] => 42000 [1] => 1064 [2] => 您的 SQL 语法有误;请查看与您的 MySQL 服务器对应的手册在第 1 行的 '' 附近使用正确语法的版本)
编辑: 这是我用来连接的代码:
function dbConnect ($dbname) {
$user = "root";
$pass = "";
$db = new PDO ("mysql:host=127.0.0.1;dbname=$dbname", $user, $pass);
if ($db) {
//echo "Connected to database." . "</br>";
}
return $db;
}
Table 名称不要放在引号内,更改
CREATE TABLE 'test'
^ ^
到
CREATE TABLE `test` // don't even need back ticks usually
将您的 SQL 更改为:
CREATE TABLE test
(col1 CHAR (64) PRIMARY KEY,
col2 CHAR (64),
col3 CHAR (64),
col4 CHAR (64))
试试:
$dbh->exec ("CREATE TABLE test
(col1 CHAR (64) PRIMARY KEY,
col2 CHAR (64),
col3 CHAR (64),
col4 CHAR (64))") or die (print_r ($dbh->errorInfo (), true));