Bài viết này sẽ mô tả cách kết nối cơ sở dữ liệu PostgreSQL từ C# bằng thư viện Npgsql.
1. Cách cài đặt thư viện Npgsql
Npgsql có thể được cài đặt bằng NuGet. Kiểm tra phiên bản mới nhất của Npgsql tại trang: https://www.nuget.org/packages/Npgsql/
Phiên bản mới nhất tính đến tháng 7 năm 2020 là Npgsql 4.1.4

Có hai cách để cài đặt thư viện Npgsql:
- Cài đặt bằng tập tin Npgsql.msi
- Cài đặt từ package NuGet của Visual Studio
① Cài đặt bằng tập tin Npgsql.msi
Để download file Npgsql.msi thì bạn vào trang https://github.com/npgsql/npgsql/releases > click Npgsql.msi

Sau khi đã tải xuống file MSI, hoàn tất cài đặt và kiểm tra nơi Npgsql.dll được cài đặt thì có thể thấy tại:
C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Npgsql\
※Đường dẫn này có thể sẽ thay đổi tùy thuộc vào phiên bản Npgsql.
② Cài đặt từ package NuGet của Visual Studio
Sau khi tạo project trong Visual Studio 2017 > right-click vào tên project > click NuGet Package Management (N)…

Chọn tab Reference > nhập từ khóa tìm kiếm npgsql > chọn phiên bản npgsql > click Install

Click OK để tiến hành cài đặt thư viện Npgsql là xong.

2. Tạo kết nối đến cơ sở dữ liệu PostgreSQL từ C# với Npgsql
Sau khi đã hoàn tất cài đặt thư viện Npgsql vào project của Visual Studio thì việc kết nối đến cơ sở dữ liệu PostgreSQL từ C# là rất đơn giản.
Bạn có thể tham khảo source code sau đây:
using Npgsql; using System; using System.Windows.Forms; namespace MinhHoangBlog_minhhn.com { static class Program { /// <summary>The main entry point for your application.</summary> [STAThread] static void Main() { // Connection information string connInfo = string.Format("Server={0};Port={1};User Id={2};Password={3};Database={4};", "localhost", 5432, "postgres", "12345678", "sample_db"); // Connection NpgsqlConnection conn = null; try { // Initialization conn = new NpgsqlConnection(connInfo); // Open connection conn.Open(); MessageBox.Show("Successfully connected to PostgreSQL."); } catch (Exception ex) { MessageBox.Show("Failed to connect to PostgreSQL. Error: " + ex.Message); } finally { // Close connection if (null != conn) { conn.Close(); } } } } }
[…] pgadmin postgresql postgresql settings psql sql shell FacebookTwitterPinterestLinkedIn Cách kết nối cơ sở dữ liệu PostgreSQL từ C# Cách lấy kích thước của database, table, indexes, tablespace trong […]