我想创建一个 PDO mysql 连接。但是 execute() 函数返回 false,而 errorInfo() 返回“未选择数据库!”。但是我选择了一个数据库。
这是我的代码:
$array = array("db" => "blogscript", "host" => "localhost", "user" => "root", "pass" => "");
$db = new PDO('mysql:dbname=' . $array['db'] . ';host=' . $array['host'] . '', $array['user'], $array['pass']);
$statement = $db->prepare('
SELECT *
FROM pages
');
$r = $statement->execute();
if ($r === false) {
return $statement->errorInfo();
}
数据库“blogscript”存在。
最佳答案
按此顺序硬编码与数据库和主机
的连接
$db = new PDO('dbname=blogscrip;mysql:host=localhost', root, pass);
抛出异常找不到驱动程序
按照documentation中的顺序
$dbh = new PDO('mysql:host=localhost;dbname=blogscript', root, pass);
作品
将顺序更改为主机和数据库
关于php - PDO - 3D000 未选择数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14276465/