为什么PDO在没有dbname的情况下工作


Why is PDO working without dbname?

我正在使用以下命令连接到我的数据库:

$resource = new PDO('odbc:driver=FreeTDS;Server=127.0.0.1;Port=8090;UID=Reporting;PWD=readonly;');

没有指定数据库名称,但它仍然连接到数据库。问题是,它连接到了错误的数据库。我尝试包含一个dbname=DATABASENAME;部分,但这被完全忽略了。如何告诉PDO连接到其他数据库?

使用DATABASE而不是DBNAME,我认为这就是问题所在:

$resource = new PDO('odbc:driver=FreeTDS;Server=127.0.0.1;Port=8090;DATABASE=DATABASENAME;UID=Reporting;PWD=readonly;');

您尝试执行标准操作了吗?喜欢

new PDO("odbc:Driver={SQL Server};Server=127.0.0.1;Database=test;",'sa','password'); 

你在使用哪个数据库?ms-sql服务器还是其他什么?