通过PDO连接Vertica数据库时出现错误

3

我在使用PDO连接Vertica数据库时遇到问题,它抛出了错误。

[unixODBC][驱动程序管理器]找不到数据源名称,也没有指定默认驱动程序' SQLSTATE SQLSTATE[IM002]

我的连接字符串如下:

$conn = new PDO('odbc:DRIVER={SOURCENAME};Server=localhost;Database=dashboard', "yogesh", "");

相同的dsn可以在isql实用程序中使用,但无法在pdo中使用。


这里的信息不足以提供帮助。您能否发布odbc.ini和odbcinst.ini的内容? - bpanulla
我的odbc.ini包含如下内容: [ODBC数据源] dashboard = MyODBC VERTICA DSN[dashboard] Driver = /opt/vertica/lib64/libverticaodbc.so.6.0.1 Description = Vertica测试实例 ServerName = localhost UserName = yogesh Database = dashboard Password = '' Port = 5433[Driver] ODBCInstLib = /usr/lib/x86_64-linux-gnu/libodbcinst.so.1 ErrorMessagesPath = /opt/vertica/lib64/ DriverManagerEncoding = UTF-16 LogPath = /tmp LogLevel = 4
ODBCINST.ini: [dashboard] Driver = /opt/vertica/lib64/libverticaodbc.so.6.0.1 Description = Vertica测试实例 Threading = 0 FileUsage = 1 DontDLClose = 1
- Yogesh Ballani
以上的odbc.ini和odbcinst.ini可以使用odbc_connect工作,但无法与pdo一起使用。 - Yogesh Ballani
2个回答

1

很可能它正在错误的位置寻找ini文件,请在php文件上进行strace,并查看它是否尝试从正确的路径访问ini文件


0

你尝试过更改吗?

DRIVER={SOURCENAME};

Driver=Vertica

?


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接