У нас есть существующее приложение стороннего разработчика с закрытым исходным кодом, использующее базу данных Pervasive PSQL. Например, PSQL находятся в каталоге c: \ test и имеют имена типа holiday.dat, offers.dat и т. Д. Я хочу читать и, если возможно, писать в эти файлы без установки Pervasive Workstation Engine. С Workstation Engine и ODBC-соединением он работает без каких-либо проблем. Но мы не будем устанавливать Workstation Engine на любом клиенте, а стороннее приложение - тоже.Подключить Pervasive DB с использованием OLE DB
На connectionsstrings.com я нашел строку соединения:
"Provider=PervasiveOLEDB;Data Source=C:\datafilesDirectory;"
с помощью директив:
using Pervasive.Data.SqlClient; using System.Data.OleDb; using System.Xml.Serialization;
тестовое соединение сниппет:
string strAccessConn = "Provider=PervasiveOLEDB;Data Source=C:\datafilesDirectory;" string strAccessSelect = "SELECT * FROM holidays"; // Create the dataset and add the Categories table to it: DataSet myDataSet = new DataSet(); OleDbConnection myAccessConn = null; try { myAccessConn = new OleDbConnection(strAccessConn); } catch(Exception ex) { Console.WriteLine("Error: Failed to create a database connection. \n{0}", ex.Message); return; } try { OleDbCommand myAccessCommand = new OleDbCommand(strAccessSelect,myAccessConn); OleDbDataAdapter myDataAdapter = new OleDbDataAdapter(myAccessCommand); myAccessConn.Open(); myDataAdapter.Fill(myDataSet,"Categories"); } catch (Exception ex) { Console.WriteLine("Error: Failed to retrieve the required data from the DataBase.\n{0}", ex.Message); return; } finally { myAccessConn.Close(); }
Приложение не может открыть соединение с базой данных.