PHP 创建 MySQL 数据库

数据库由一个或多个表组成。

你需要特殊的 CREATE 权限来创建或删除 MySQL 数据库。

使用 MySQLi 和 PDO 创建 MySQL 数据库

CREATE DATABASE 语句用于在 MySQL 中创建数据库。

下例创建一个名为 "myDB" 的数据库:

实例(MySQLi 面向对象)

<?php
$servername = "localhost";
$username = "username";
$password = "password";

// 创建连接
$conn = new mysqli($servername, $username, $password);
// 检查连接
if ($conn->connect_error) {
  die("连接失败:" . $conn->connect_error);
}

// 创建数据库
$sql = "CREATE DATABASE myDB";
if ($conn->query($sql) === TRUE) {
  echo "数据库创建成功";
} else {
  echo "创建数据库时出错:" . $conn->error;
}

$conn->close();
?>

注意:当你创建一个新的数据库时,你只需要为 mysqli 对象指定前三个参数(servername、username 和 password)。

提示:如果你必须使用特定的端口,请为数据库名称参数添加一个空字符串,如下所示:

new mysqli("localhost", "username", "password", "", port)

实例(MySQLi 过程化)

<?php
$servername = "localhost";
$username = "username";
$password = "password";

// 创建连接
$conn = mysqli_connect($servername, $username, $password);
// 检查连接
if (!$conn) {
  die("连接失败:" . mysqli_connect_error());
}

// 创建数据库
$sql = "CREATE DATABASE myDB";
if (mysqli_query($conn, $sql)) {
  echo "数据库创建成功";
} else {
  echo "创建数据库时出错:" . mysqli_error($conn);
}

mysqli_close($conn);
?>

注意:以下 PDO 示例创建了一个名为 "myDBPDO" 的数据库:

实例(PDO)

<?php
$servername = "localhost";
$username = "username";
$password = "password";

try {
  $conn = new PDO("mysql:host=$servername", $username, $password);
  // 将 PDO 错误模式设置为异常
  $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  $sql = "CREATE DATABASE myDBPDO";
  // 使用 exec(),因为不返回结果
  $conn->exec($sql);
  echo "数据库创建成功<br>";
} catch(PDOException $e) {
  echo $sql . "<br>" . $e->getMessage();
}

$conn = null;
?>

提示:PDO 的一个巨大优势是它具有异常类来处理可能在我们数据库查询中出现的任何问题。如果在 try{ } 块中抛出异常,脚本将停止执行并直接流向第一个 catch(){ } 块。在上面的 catch 块中,我们输出了 SQL 语句和生成的错误消息。