JuliaDatabases/LibPQ.jl
A Julia wrapper for libpq
🐘 LibPQ.jl — Wrapper Julia cho PostgreSQL libpq
Thuần wrapper, không phải ORM. Nói cách khác: không parse SQL, không emit SQL, không bọc transaction hay cursor — chỉ gọi libpq đúng như tài liệu PostgreSQL ghi.
LibPQ.jl là một gói Julia bao bọc thư viện C libpq chính thức của PostgreSQL. Dự án tự động cài đặt libpq qua BinaryBuilder.jl trên MacOS, GNU Linux và Windows, giúp người dùng Julia kết nối trực tiếp đến máy chủ PostgreSQL mà không cần phụ thuộc hệ thống bên ngoài.
✨ Điểm nổi bật
- Kết nối đa dạng: hỗ trợ DSN và chuỗi kết nối PostgreSQL, với encoding UTF-8 mặc định
- Truy vấn có/không tham số: tạo và thực thi query với hoặc không dùng parameter binding
- Async queries: thực thi truy vấn bất đồng bộ, tận dụng khả năng concurrency của Julia
- Stream kết quả qua Tables.jl: tích hợp sẵn với hệ sinh thái JuliaData để chuyển đổi kết quả truy vấn sang định dạng dễ xử lý
- Chuyển đổi kiểu tự động: cấu hình được việc ánh xạ nhiều kiểu PostgreSQL sang kiểu Julia tương ứng
- Prepared Statements: tạo và thực thi câu lệnh đã chuẩn bị, hỗ trợ truyền bảng tham số để tái sử dụng với dữ liệu khác nhau
- Cài đặt tự động: BinaryBuilder.jl tự động build và cung cấp
libpqcho 3 nền tảng chính
💡 Vì sao đáng chú ý
LibPQ.jl chọn cách tiếp cận "wrapper thuần" — không biến mình thành ORM hay thư viện database chuẩn. Dự án hướng tới việc bao bọc toàn bộ chức năng non-deprecated của libpq đúng theo tài liệu PostgreSQL, kể cả xử lý lỗi theo đúng spec. Điều này làm LibPQ.jl phù hợp cho những ai muốn truy cập PostgreSQL từ Julia ở mức thấp, kiểm soát chi tiết mà không bị che giấu bởi các abstraction dư thừa.
Gói này đã tích hợp sẵn với Tables.jl, cho phép pipeline dữ liệu từ query result sang các định dạng malleable trong hệ sinh thái Julia. Dự án mở rộng cho phép cộng đồng đóng góp type conversion cho các Oid còn thiếu, và welcome các PR có test cùng tài liệu.
#PostgreSQL #Julia #libpq #Database #OpenSource #TiniX
Similar Projects
Discover other similar projects and AI models.
The easy-to-use open source Business Intelligence and Embedded Analytics tool that lets everyone work with data :bar_chart:
Neon: Serverless Postgres. We separated storage and compute to offer autoscaling, code-like database branching, and scale to zero.
An implementation of the Microsoft Language Server Protocol for the Julia language.