为什么这不会在mysql中创建一个表

时间:2014-03-18 15:49:14

标签: php mysql

代码连接完美,但它没有#39;创建一个表为什么会这样?

<?php

include "connect.php";

$table = "TestTable";
mysql_query ("ALTER TABLE '$table' ADD 'TITLE' TEXT NOT NULL");


?>

connect.php:

$con = mysql_connect("localhost", test, password);
mysql_select_db($db, $con);
?>

3 个答案:

答案 0 :(得分:0)

如果你想创建一个表,那么ALTERADD命令都是无意义的,试试

CREATE TABLE $table (TITLE TEXT NOT NULL);

答案 1 :(得分:0)

如果您希望“创建”一个表(如果它不存在),请使用以下命令,如果表存在则更改它。

<?php
include "connect.php";

$table = "TestTable";
mysql_query("CREATE TABLE IF NOT EXISTS `$table` (`TITLE` TEXT NOT NULL)");
mysql_query("ALTER TABLE `$table` ADD `TITLE` TEXT NOT NULL");

?>

修改

以下内容已经过测试并在我的服务器上运行(使用mysqli_*功能):

<?php
DEFINE ('DB_USER', 'xxx');
DEFINE ('DB_PASSWORD', 'xxx');  
DEFINE ('DB_HOST', 'xxx');
DEFINE ('DB_NAME', 'xxx');

$mysqli = @mysqli_connect (DB_HOST, DB_USER, DB_PASSWORD, DB_NAME)  
OR die("could not connect");

$table = "TestTable";
mysqli_query($mysqli,"CREATE TABLE IF NOT EXISTS `$table` (`TITLE` TEXT NOT NULL)");
mysqli_query($mysqli,"ALTER TABLE `$table` ADD `TITLE` TEXT NOT NULL");

?>

答案 2 :(得分:0)

关键是使用CREATE。这段代码可以解决问题:

<?php

include "connect.php";

$table = "TestTable";
mysql_query ("CREATE TABLE '$table' ('TITLE' TEXT NOT NULL"));

)

?>