【发布时间】:2012-10-27 14:13:49
【问题描述】:
我正在尝试从 php 为我的数据库创建表。我有点想建立一个社交网站,无论如何,我编写了代码并且正在工作,但是新表不会在数据库中创建,我不知道代码似乎有什么问题。非常感谢您的帮助!
<?php
$host = "host";
$user = "user";
$pswd = "password";
$dbnm = "db";
$conn = @mysqli_connect($host, $user, $pswd, $dbnm);
if (!$conn)
die ("<p>Couldn't connect to the server!<p>");
$selectData = @mysqli_select_db ($conn, $dbnm);
if(!$selectData)
{
die ("Database Not Selected");
}
$sql = "CREATE TABLE IF NOT EXIST 'friends'
(
'friend_id' INT NOT NULL auto_increment,
'friend_email' VAR CHAR(20) NOT NULL,
'password' VAR CHAR(20) NOT NULL,
'profile_name' VAR CHAR(30) NOT NULL,
'date_started' DATE NOT NULL,
'num_of_friends' INT unsigned,
PRIMARY KEY ('friend_id')
)";
$query_result = @mysqli_query($conn, $sql);
mysqli_close($conn);
?>
【问题讨论】:
-
你看到的错误信息是什么?
-
抑制错误被认为是不好的做法(
@运算符)。请不要。 -
从 mysql 客户端运行它。你
CREATE TABLE语法错误。 -
不要那样做。设计结构并在 PHPMyAdmin 之类的工具中创建它。只有当软件大部分完成并且您知道如何检索和显示 MySQL 给您的错误时,才需要从代码创建表(以便能够轻松地在另一台服务器上设置您的软件)。
-
它是
EXISTS而不是EXIST。VAR和CHAR之间不应有任何空格。不要将表名和字段名用单引号括起来。
标签: php