JavaとC#のsqlite実装
-
29-10-2019 - |
質問
私はJavaおよびC#アプリケーションでSQLiteを使用しており、 system.data.sqlite C#とTheのライブラリ Zentus sqlitejdbcドライバー Javaのために。
Javaの実装により、デフォルトのJavaインストールに含まれる容易に利用可能なSQLライブラリを使用できるのに対し、C#実装はC#等価の特定のSQLiteバージョンを使用する必要があることに気付きました。
例:
C#
SQLiteConnection connection = null;
SQLiteCommand command = null;
SQLiteDataReader dReader = null;
float[] _data;
try
{
connection = new SQLiteConnection(_connectionString);
connection.Open();
ジャワ
Connection connection = null;
PreparedStatement ps = null;
ResultSet rs = null;
float _data[];
try
{
connection = DriverManager.getConnection(_connectionString);
Statement st = connection.createStatement();
これは、SQLデータベースが言語でどのように利用されているかについてですか、それともライブラリの実装により、それらの使用につながる詳細についてもっと知りたいです。
解決
私は信じている Connection
, PreparedStatement
, 、 と ResultSet
すべてインターフェイスです、私は信じています。あなたはC#で同じことをすることができます IDbConnection
, IDbCommand
と IDataReader
具体的なSQLiteの実装の代わりに。
他のヒント
Java実装により、デフォルトのJavaインストールに含まれる容易に利用可能なSQLライブラリを使用できますが、接続文字列は異なり、さまざまなタイプのデータベースに異なるドライバー(JAR)をインポートする必要があります。
したがって、JAVAがJavaで使用したいデータベース用に書かれている限り、Javaがラッパーを提供しているようにJavaが提供されます。
以下をC#で書くことができます。
IDbConnection connection = null;
IDbCommand command = null;
IDataReader dReader = null;
float[] _data;
try
{
connection = new SQLiteConnection(_connectionString);
connection.Open();
異なる唯一のことは、Javaにヘルパークラスがあることです DriverManager
.
注:JDBC 2.0 APIの新品であるDataSourceインターフェイスは、データソースに接続する別の方法を提供します。 DataSourceオブジェクトの使用は、データソースに接続する好ましい手段です。
使用する場合 DataSource
, 、これが接続を取得するための好ましい方法です。 DriverManager
ドキュメントでは、SQLite実装の特定のコンストラクターを呼び出す必要があります。