繁体   English   中英

PDO - 如果不存在则创建数据库

[英]PDO - CREATE DATABASE IF NOT EXISTS

这是我们的 db.php

$host = 'localhost';
$username = 'root';
$password = '';
try
{
    $conn = new PDO("mysql:host=".$host.", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $sql = "CREATE DATABASE IF NOT EXISTS teacher";
    $conn->exec($sql);
    $sql = "use teacher";
    $conn->exec($sql);
}
catch(PDOException $e)
{
    echo "Error".$e->getMessage();
}

..

有一个错误!

解析错误:语法错误,意外的 'CREATE' (T_STRING) in

如何解决这个问题。

$conn = new PDO("mysql:host=".$host.", $username, $password);
                ^           ^       ^
                1           2       3

双引号 1 开始一个字符串。

双引号 2 结束一个字符串。

双引号 3 开始一个字符串。

该字符串直到这里才关闭:

$sql = "CREATE ...
       ^
       4

双引号 4 结束字符串。

这意味着CREATE被解释为 PHP 关键字,而不是字符串的一部分。

提示:您可以将变量放在双引号字符串中。 这使得更容易避免这种类型的不平衡引用错误。

$conn = new PDO("mysql:host=$host", $username, $password);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM