无法创建表MySQLi
问题描述:
我尝试创建一个与CREATE TABLE IF NOT EXISTS
但表错误的表。我无法解决这个问题。任何人都可以帮我吗?无法创建表MySQLi
<?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);
?>
谢谢你的帮助。
答
您的脚本中存在一些问题。更改您创建的表格查询,如下所示:
$newTable = $connection->query("CREATE TABLE IF NOT EXISTS $tablename(
ID int NOT NULL AUTO_INCREMENT,
PRIMARY KEY(ID),
userName VARCHAR(50) NOT NULL UNIQUE,
user_password CHAR(32) NOT NULL,
isAdmin TINYINT(1) NOT NULL,
companyID int NOT NULL,
branchID int NOT NULL)");
您在运行此代码时是否收到任何错误?你确定桌子不存在吗?在定义$连接的行中有@,将其删除。 – Milanzor
This [answer](https://stackoverflow.com/a/25146296/5513005),可能会帮助你...我看到你没有通过PHP检查数据库,如果表存在与否。通过你的问题陈述,我无法帮助很多。 –
您需要将密码更改为其他名称,密码是内置名称,请尝试user_pass并再次运行脚本 – Exprator