我正在做PHP实践者的Laracast,并且无法使用PDO PHP函数连接到本地SQL数据库。
我已经查看了MySQL Workbench中数据库的所有设置。代码中的数据库名称正确。端口正确。本地主机IP正确。
try {
$pdo = new PDO('mysql:host 127.0.0.1:3306;dbname=Test', 'root', '');
} catch (PDOException $e) {
die('Could Not Connect');
};
我希望它能够正常工作,并且能够从我的SQL数据库表中提取信息。但是,它继续引发异常,只给我我的die命令提示符。
我还确认MySQL服务器正在通过MySQL工作台运行。
要使此命令正确连接,需要更改什么?
答案 0 :(得分:3)
对于初学者,您应该检查实际错误。您的“无法连接”消息无法帮助您或我们诊断问题,但实际引发的异常将可以。理想情况下,您将拥有更精确的错误处理代码。不过,至少可以在var_dump($e)
块内catch
。
也就是说,您的连接字符串(DSN)语法错误;您缺少=
,并且错误地指定了端口。
$pdo = new PDO('mysql:host=127.0.0.1;port=3306;dbname=Test', 'root', '');
// ^ ^ you need ;port=, not just a colon
// |
// should be =, not a space
其他一些注意事项:
;
之后,您不需要}
。