【问题标题】:Database creation using PHP and MySQL使用 PHP 和 MySQL 创建数据库
【发布时间】:2013-08-30 13:54:33
【问题描述】:

好的,所以我有这个代码:

    <?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpwd = 'ALLO';
$dbname = 'test';
$conn = mysqli_connect($dbhost, $dbuser, $dbpwd, $dbname);


if(! $conn )
{
  die("\nconn: $conn \nCould not connect: " . mysqli_error($conn));
}
echo "\n";







$createtab="CREATE TABLE People(FirstName CHAR(30),LastName CHAR(30),Age INT)";

// Execute query
if (mysqli_query($conn,$createtab))
  {
  echo "Table created successfully";
  }
else
  {
  echo "Error creating table: " . mysqli_error($conn);
  }

echo "\n";




mysqli_query($conn,"INSERT INTO People (FirstName, LastName, Age)
VALUES ('Peter', 'Griffin',35)");

mysqli_query($conn,"INSERT INTO People (FirstName, LastName, Age)
VALUES ('Glenn', 'Quagmire',33)");






mysqli_close($conn)
?>

当我运行 php 脚本时,它运行良好。

但是,我在 mysql workbench 中找不到表。

我刷新了很多次。

http://i.stack.imgur.com/uX1sQ.png http://i.stack.imgur.com/iEXqT.png

【问题讨论】:

  • phpmyadmin 它说什么?
  • 我使用HeidiSQL 运行查询,表格和行出现在我的...
  • 哦,可能是 mysql 工作台没有选择默认数据库。在您的代码中插入 CREATE DATABASE 等等;使用等等;在创建表之前。或者只使用现有的数据库。
  • 使用?好吧,你是什么意思?我之前确实有一个创建数据库的脚本,但是发现它没用。
  • 是的 USE database_name 所以它知道要使用什么数据库

标签: php mysql database


【解决方案1】:

看看这是否会给你任何结果:

SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME='People'

如果没有,请在任何表格之前创建一个数据库,或者从您的屏幕截图来看,只需在您的代码中添加一个 USE 测试。

$createdb="USE test";

// Execute query
if (mysqli_query($conn,$createdb))
 {
  echo "Db selected";
 }
else
 {
  echo "Error selecting db: " . mysqli_error($conn);
 }

【讨论】:

  • 我选择了 Db,但我看不到表格。
  • DROP 测试并重新创建它。
  • 您拥有用户的所有权限吗?
  • 特权是什么意思?以及如何检查?
  • 我仍然一无所获。我将 phpmyadmin.conf 更改为 Options Indexes FollowSymLinks MultiViews AllowOverride all Order Deny,Allow Allow from all
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-09-01
  • 2012-11-19
  • 1970-01-01
  • 2013-01-18
  • 2013-08-05
  • 1970-01-01
  • 2012-01-23
相关资源
最近更新 更多