2014-02-11 35 views
0

当我在我的wamp服务器运行这个php文件时,它连接到数据库,选择数据库但不创建表。 输出是这样的:PHP/MYSQL:表中没有创建wamp服务器

connected to database succussfully. 
connected to database store_db succussfully. 
table users was not created. 

是什么问题???

PHP代码:

<?php 
$sql='CREATE TABLE users 
(
PID INT NOT NULL AUTO_INCREMENT, 
PRIMARY KEY(PID), 
NAME CHAR(20), 
PASSWORD CHAR(15), 
)'; 

mysql_connect("localhost","root","") or die('could not connect to database.'); 
echo 'connected to database succussfully.<br>'; 

mysql_select_db('store_db') or die('database store_db not found.'); 
echo 'connected to database store_db succussfully.<br>'; 

mysql_query($sql) or die('table users was not created'); 
echo 'table users was created in database store_db succussfully.<br>'; 

?> 

回答

3
<?php 
$sql='CREATE TABLE users 
(
PID INT NOT NULL AUTO_INCREMENT, 
PRIMARY KEY(PID), 
NAME CHAR(20), 
PASSWORD CHAR(15), 
)'; 

删除逗号后PASSWORD CHAR(15),

在一个错误的情况下,你可以使用mysql_error()始终检索错误。然而,

。你不应该使用旧的mysql函数。 PDOMySQLi扩展中存在更好更安全的选项。

1

您$ SQL:

$sql='CREATE TABLE users 
(
PID INT NOT NULL AUTO_INCREMENT, 
PRIMARY KEY(PID), 
NAME CHAR(20), 
PASSWORD CHAR(15), 
)'; 

应该是:

$sql='CREATE TABLE users 
(
PID INT NOT NULL AUTO_INCREMENT, 
PRIMARY KEY(PID), 
NAME CHAR(20), 
PASSWORD CHAR(15) 
)'; 

您应该删除逗号密码后右CHAR(15)

0

为了得到正确的错误消息总是使用下面的代码以便将来可以计算出确切的错误。

mysql_query($sql) or die(mysql_error()); 
+0

而不是猜测只是使用类似于上面的代码,以便您可以计算出确切的错误。 –

0

确保MySQL用户正在尝试创建表,并且拥有这样的权限。 (例如,用户已被授予该数据库的“CREATE”权限)。