【发布时间】:2017-10-31 19:12:08
【问题描述】:
我尝试使用CREATE TABLE IF NOT EXISTS 创建一个表,但出现了问题。我无法解决这个问题。谁能帮帮我?
<?php
$server = "localhost";
$user = "root";
$password = "";
$dbname = "bombus";
$connection = @new mysqli( $server, $user, $password, $dbname ) or die( "ERROR : " . mysqli_error() );
$tablename = "users";
$newTable = $connection->query("CREATE TABLE IF NOT EXISTS $tablename(
ID int NOT NULL AUTO_INCREMENT,
PRIMARY KEY(ID),
userName VARCHAR(MAX) NOT NULL UNIQUE,
password CHAR(32) NOT NULL,
isAdmin TINYINT(1) NOT NULL,
companyID int NOT NULL,
branchID int NOT NULL
)");
mysqli_close($connection);
?>
感谢您的帮助。
【问题讨论】:
-
您在运行此代码时是否遇到任何错误?您确定该表不存在吗?您在定义 $connection 的行中有一个 @,请将其删除。
-
这个answer,可能对你有帮助......我看到你没有通过PHP检查表是否存在。根据您的问题陈述,我帮不上什么忙。
-
您需要将密码更改为其他名称,密码是内置名称,请尝试 user_pass 并再次运行脚本
-
此外,当我尝试运行您的查询时,我在 userName VARCHAR(MAX) 上遇到错误。将其更改为 VARCHAR(255) 并且有效。
-
连接到数据库我测试过删除@没有任何区别