我正在尝试访问我们设置的
linux服务器上设置的一些postgresSQL数据库,以前我们一直在使用访问和SQL Server 2008并且与C#Ole Db连接得很好,但是我们试图查看是否我们可以转移到postgres,因为它会更方便.我可以使用ODBC数据源管理器完美地访问linux机器上的这些数据库,它可以成功测试数据库的连接,PG Admin III可以很好地显示所有数据库,并且psql可以完全正确地访问这些数据库.但是,当我尝试通过Visual Studio使用Ole DB连接时,连接字符串如下:
“Provider = PostgresSQL OLE DB Provider; Server = 192.168.0.64:5432; location = FRANK; User ID = ourusername; password = ourpassword; timeout = 1000;”
我从connectionstrings.com得到了这个,他们从来没有让我失望过.我尝试了多种变体,搜索了其他人在线连接字符串时遇到的问题,并相应更改了它,但我仍然得到同样的错误:
致命:数据库“FRANK”不存在
不知道为什么我得到这个错误,显然那里.与其他连接方法相比,唯一不同的是提供者或通过visual studio完成的.我得到的提供者是从PGfoundry http://pgfoundry.org/projects/oledb/下载的,这是我唯一能想到的问题.有小费吗?
最佳答案 你尝试过使用Npgsql吗?
http://npgsql.projects.postgresql.org/
..
using Npgsql;
..
NpgsqlConnection con = new NpgsqlConnection("Server=192.168.0.64:5432;User ID=ourusername;password=ourpassword;Database=FRANK;timeout=1000");
也不要忘记配置postgresql服务器文件pg_hba.conf和postgresql.conf来接受你的连接类型.