Blog ini menjelaskan cara mendapatkan koneksi ODBC dari .NET di Linux. Anda dapat menggunakan .NET dengan driver ODBC Easysoft apa pun yang tersedia di platform Linux. Contoh driver yang digunakan blog ini adalah Easysoft ODBC-JDBC Gateway, yang mengubah antara ODBC dan JDBC, memungkinkan Anda bekerja dengan data Java dari .NET.
- Jika Anda belum melakukannya, instal .NET sesuai petunjuk Microsoft.
- Pastikan jalur pustaka mesin .NET Anda menyertakan folder unixODBC/lib. Jika Anda menggunakan Pengelola Driver unixODBC yang disertakan dalam distribusi driver Easysoft, Anda juga perlu menambahkan tautan simbolis untuk
libodbc.so.2
. Misalnya:cd /usr/local/easysoft/unixODBC/lib ln -s libodbc.so.1 libodbc.so.2
- Selanjutnya, instal bagian ODBC dari .NET:
dotnet add package System.Data.Odbc --version 4.7.0
- Buat program .NET baru. Misalnya:
dotnet new console --output sample1
- Edit Program.cs, dan gunakan sesuatu seperti:
using System; using System.Data.Odbc; namespace EasysoftODBCJDBCSample { class Program { static void Main(string[] args) { try { OdbcConnection DbConnection = new OdbcConnection("DSN=OJG"); DbConnection.Open(); OdbcCommand DbCommand = DbConnection.CreateCommand(); DbCommand.CommandText = "select * from MyTable"; OdbcDataReader DbReader = DbCommand.ExecuteReader(); while( DbReader.Read()) { for (int i = 0; i < DbReader.FieldCount; i++) { if (DbReader.IsDBNull(i)) { Console.Write("NULL,"); } else { Console.Write(DbReader.GetValue(i).ToString() + ","); } } Console.WriteLine(); } Console.Write("Data Finished"); DbReader.Close(); DbCommand.Dispose(); DbConnection.Close(); } catch (OdbcException ex) { Console.WriteLine(ex.Message); return; } } } }
Di baris:
OdbcConnection DbConnection = new OdbcConnection("DSN=OJG");
Ganti
OJG
dengan nama sumber data ODBC Anda seperti yang didefinisikan dalamodbc.ini
berkas. - Untuk menjalankan sampel:
dotnet run --project sample1