致命错误:未捕获的异常“PDOException”和消息“找不到驱动程序”
Posted
技术标签:
【中文标题】致命错误:未捕获的异常“PDOException”和消息“找不到驱动程序”【英文标题】:Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' 【发布时间】:2012-06-11 22:39:59 【问题描述】:我是 Web 开发的新手,今天,当我在本地服务器上练习时(使用 XAMPP Apache 和 mysql 服务),我收到了以下错误消息:
Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in C:\xampp\htdocs\blog\resources\query functions.php:3 Stack trace: #0 C:\xampp\htdocs\blog\resources\query functions.php(3): PDO->__construct('dblib:host=loca...', 'admin', 'root') #1 C:\xampp\htdocs\blog\resources\main.php(23): include('C:\xampp\htdocs...') #2 main thrown in C:\xampp\htdocs\blog\resources\query functions.php on line 3
C:\xampp\htdocs\blog that includes main.php
中的 index.php 文件来自 C:\xampp\htdocs\blog\resources
,然后 main.php 在同一目录中包含另一个名为 queryfunctions.php
的文件。 main.php 只有一行代码,即包含queryfunctions.php
。然后在那个文件中我写了这个:
$database = new PDO('dblib:host=localhost;dbname=test;charset=UTF-8', "admin", "root");
然后每当我去测试它时它都会给我错误。我已经阅读了几个问题和答案,但没有任何帮助。在我的 PHP 信息中,这些是安装的 PDO 驱动程序:mysql, odbc, sqlite, sqlite2
。
用于 MySQL 的 PDO 驱动程序:客户端 API 版本 mysqlnd 5.0.8-dev - 20102224 - $修订:310735 $。
【问题讨论】:
【参考方案1】:如果您尝试连接到 MySQL,请使用 MySQL 连接字符串:
$database = new PDO('mysql:host=localhost;dbname=test', "admin", "root");
您使用的dblib
驱动程序适用于Microsoft SQL 和Sybase。如果您使用的是 XAMPP,那么您可能使用的是 MySQL 而不是 Microsoft SQL。如果您使用的是 Microsoft SQL,则需要下载并安装它:http://www.php.net/manual/en/ref.pdo-dblib.php
【讨论】:
以上是关于致命错误:未捕获的异常“PDOException”和消息“找不到驱动程序”的主要内容,如果未能解决你的问题,请参考以下文章
致命错误:第 19 行的 C:\xampp\htdocs\register.php 中抛出未捕获的异常“PDOException”
带有消息“SQLSTATE [42000]”的未捕获异常“PDOException”:语法错误或访问冲突:
未捕获的异常“PDOException”消息“无效的数据源名称”
致命错误:未捕获的 PDOException:SQLSTATE[42000]:? [复制]
致命错误:未捕获的 PDOException:SQLSTATE[42000] 语法错误或访问冲突
PHP 致命错误:未捕获的 PDOException:SQLSTATE [42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误