2017-09-01 1 views
0

C#でPostgreSQLデータベースをクエリする方法は、データベースに依存しない方法、つまりNpgsqlを使用しない方法ですか? .NETライブラリと、接続文字列に必要なDBのIP、ユーザー名、パスワード、その他の情報を含む接続文字列を使用したいと考えています。PostgreSQLデータベースをC#でデータベースに無関係にクエリする(Npgsqlを使用しない)

+1

一つの選択肢は以下のようになり、[ODBC接続](https://stackoverflow.com/q/41076042/1132334) – dlatikay

+0

Npgsqlのが解決策ではない理由を説明していただけますか? –

+0

.NETライブラリを使ってビルドしたい。また、ODBCではDSNの設定と、オプションではないサーバーへのドライバのインストールが必要になります。 .NET Frameworkには、何をしようとしているのかを達成するためのクラスやプロバイダは組み込まれていません。 – ranasrule

答えて

0

ODBCを使用して、アプリケーション内で接続を構築できます。 Postgresドライバは、プログラムを実行しているマシンにインストールする必要があります。あなたのアプリは汎用ODBCクラスだけを使用します。以下は簡単な例です。

using System.Data.Odbc; 

string connectString = "Driver={PostgreSQL UNICODE};Port=5432;Server=localhost;Database=myDBname;Uid=myusername;Pwd=mypassword;"; 

OdbcConnection connection = new OdbcConnection(connectString); 

connection.Open(); 

string sql = "select version()"; 
OdbcCommand cmd = new OdbcCommand(sql, connection); 

OdbcDataReader dr = cmd.ExecuteReader(); 
dr.Read(); 
string dbVersion = dr.GetString(0); 
関連する問題