PDO完成工作但也返回错误

时间:2015-12-01 14:25:04

标签: php mysql pdo

我是PHP的新手,我有很多问题。

首先,我使用了PDO和异常处理程序,我有一个问题PDO创建数据库和表但返回错误,因为它们存在而无法完成工作。

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

    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $sql = "CREATE DATABASE DB";
    $conn->exec($sql);
    echo "Database created successfully<br>";
    }
catch(PDOException $e)
    {
    echo $sql . "<br>" . $e->getMessage();
    }

    $conn= null;



try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);

    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);


    $sql = "CREATE TABLE TB1 (
    id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, 
    name VARCHAR(30) NOT NULL,
    scode VARCHAR(30) NOT NULL,
    birth VARCHAR(30) NOT NULL,
    reg_date TIMESTAMP
    )";


    $conn->exec($sql);
    echo "Table TB1 created successfully";
    }
catch(PDOException $e)
    {
    echo $sql . "<br>" . $e->getMessage();
    }

$conn = null;

1 个答案:

答案 0 :(得分:0)

CREATE DATABASE IF NOT EXISTS DBName;

这可能会回答你的问题吗?

编辑:

sql = "CREATE DATABASE IF NOT EXISTS DBName";
$return = $conn->exec($sql);
if(!$return){
    exit();
}