" PDO_Construct:未知的数据库名称"错误

时间:2017-02-25 17:05:23

标签: php mysql pdo

专家,

这是我编码生活中最令人沮丧的经历。

我只是想使用PDO连接到我的数据库。

我正在使用mysqli成功完成但PDO,我收到以下错误消息:

  

致命错误:未捕获的异常' PDOException'与消息   ' SQLSTATE [HY000] [1049]未知数据库' myDBName,host = localhost''在   C:\ xampp \ htdocs \ _clorsures \ forms \ final.php:51堆栈跟踪:#0   C:\ XAMPP \ htdocs中\封\形式\ final.php(51):   PDO-> __构造(' mysql:dbname = di ...',' myusername',' mypassword',   数组)#1 {main}在C:\ xampp \ htdocs \ closures \ forms \ final.php中抛出   第51行

我为安全性更改了数据库名称。

这是连接字符串:

$pdo = new PDO("mysql:dbname=myDBname,host=localhost","mysusername","mypass",array(PDO::ATTR_PERSISTENT => true));

使用msqli完美无缺:

$conn = mysqli_connect("localhost","myusername","mypass","myDB"); but I am using PDO because I am using PDO because it allows me to use array but because of this error, I am unable to test to see if my array works.

非常感谢您的协助。

2 个答案:

答案 0 :(得分:2)

  

通常,DSN包含PDO驱动程序名称,后跟冒号,后跟PDO驱动程序特定的连接语法。

您应该使用comma而不是$pdo = new PDO("mysql:dbname=myDB;host=localhost","mysusername","mypass",array(PDO::ATTR_PERSISTENT => true)); 它会是这样的:

UIBezierPath *resultingPath

答案 1 :(得分:0)

1。;而不是dbname和host

之间需要,

2.此外数据库名称不正确(需要myDB)正如您所说$conn = mysqli_connect("localhost","myusername","mypass","myDB")工作正常。

$pdo = new PDO("mysql:dbname=myDB;host=localhost","mysusername","mypass",array(PDO::ATTR_PERSISTENT => true));