使用PHP创建数据库和表
我正在创建一个数据库和表创建脚本。正在创建数据库,但未创建表。当我将我的使用PHP创建数据库和表,php,mysql,Php,Mysql,我正在创建一个数据库和表创建脚本。正在创建数据库,但未创建表。当我将我的CREATE TABLEsql直接复制到phpMyAdmin中时,它会成功插入。所以我不确定问题是什么 function createdb() { include 'DbConnect.php'; $qry = "CREATE DATABASE chinesegame2"; $sql = $mysqli->query($qry); $sta
CREATE TABLE
sql直接复制到phpMyAdmin中时,它会成功插入。所以我不确定问题是什么
function createdb() {
include 'DbConnect.php';
$qry = "CREATE DATABASE chinesegame2";
$sql = $mysqli->query($qry);
$stats = "CREATE TABLE stats (
id_stats INT(10) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (id_stats),
id_user_fk VARCHAR(30),
level VARCHAR(255),
experience INT(10),
item_a INT(10),
item_b INT(10),
item_c INT(10)
)";
if ($mysqli->query($stats)) {echo "Table stats created successfully";}
else { printf("Connect failed: %s\n", $mysqli->connect_error);}
mysqli_close($mysqli);
}
结果:已创建chinesegame2数据库,但未创建任何表<代码>$mysqli->connect\u错误仅给出“连接失败:”
你知道为什么吗
谢谢你看这里:
这里呢
另外,请确保您位于该数据库中,并将其选中,或者告诉要在其中创建表的数据库。并且您的连接详细信息也是正确的
仅给出“连接失败:”
这是您在代码中定义的字符串,而不是错误消息。当您应该轮询连接以查找任何错误时,您只轮询连接错误,即mysqli->error()。如果您这样做,它将告诉您尚未选择数据库(并且您尚未在CREATETABLE语句中显式指定数据库)
尝试:
您能确认连接详细信息是否正确吗?一旦你创建了数据库,你需要连接到它。哎呀,我的项目的其他部分使用了相同的连接函数,连接到了错误的数据库。谢谢不客气。如果这对您有帮助,请标记为答案。谢谢
<?php
$con=mysqli_connect("example.com","peter","abc123","my_db");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
// Create table
$sql="CREATE TABLE Persons(FirstName CHAR(30),LastName CHAR(30),Age INT)";
// Execute query
if (mysqli_query($con,$sql))
{
echo "Table persons created successfully";
}
else
{
echo "Error creating table: " . mysqli_error($con);
}
?>
$sql = "CREATE TABLE Persons
(
PID INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(PID),
FirstName CHAR(15),
LastName CHAR(15),
Age INT
)";
$qry = "CREATE DATABASE chinesegame2";
$sql = $mysqli->query($qry);
$mysqli->select_db("chinesegame2");
...