Danh sách Tutorial

PostgreSQL


PostgreSQL là một hệ thống quản trị cơ sở dữ liệu quan hệ miễn phí và nguồn mở (RDBMS) tập trung vào khả năng mở rộng và tuân thủ các tiêu chuẩn kỹ thuật. Nó được thiết kế để xử lý một loạt các khối lượng công việc lớn, từ các máy tính cá nhân đến kho dữ liệu hoặc dịch vụ Web có nhiều người dùng đồng thời.

PostgreSQL bắt đầu từ năm 1986 như một phần của dự án POSTGRES tại Đại học California tại Berkeley và có hơn 30 năm phát triển. Đây là cơ sở dữ liệu mặc định cho macOS Server, và cũng có các bản phân phối cho Linux, FreeBSD, OpenBSD và Windows.

Thông tin cơ bản về PostgreSQL

  • Phát triển bởi: PostgreSQL Global Development Group
  • Phát hành lần đầu: 08/07/1996
  • Phiên bản hiện tại: 11.4 phát hành vào ngày 20/06/2019
  • Repository: git.postgresql.org/gitweb/?p=postgresql.git
  • Viết bằng ngôn ngữ lập trình C
  • Operating System: FreeBSD, Linux, macOS, OpenBSD, Windows
  • Loại phần mềm: RDBMS
  • License: PostgreSQL License (free and open-source, permissive)
  • Website: postgresql.org

Các bài viết về PostgreSQL

[PosgreSQL] Cách kiểm tra dung lượng database

Để kiểm tra dung lượng các database đang chiếm dụng trên ổ đĩa trong PosgreSQL. Chúng ta thực hiện các bước sau đây. Bước 1: Sử dụng psql để kết nối tới database của bạn psql -U postgres -h database.vinasupport.com Bước 2: Chạy lệnh SQL Query sau để kiểm tra dung lượng của các database. SELECT pg_database.datname, […]

Khắc phục lỗi “no pg_hba.conf entry for host” trên PostgreSQL

Để thực hiện kết nối tới PostgreSQL từ một máy tính từ xa, chúng ta sẽ gặp lỗi như sau: Error: connect to PostgreSQL server: FATAL: no pg_hba.conf entry for host “XXX.XXX.XX.XXX” Nguyên nhân là do PostgresSQL mặc định chỉ cho phép kết nối từ chính nó, chứ ko từ host bên ngoài. Vì vậy […]

[PostgreSQL] Sử dụng Transactions trong PostgreSQL

Một transaction trong PostgreSQL là một giao dịch (phiên làm việc) xử lý tổ hợp nhiều lệnh SQL cùng một lúc. Nếu chương trình có vấn đề hoặc lỗi trong xử lý nó sẽ gọi ROLLBACK để hủy quá trình thực hiện. Lúc đó dữ liệu trong database sẽ không thay đổi. Transaction đảm bảo […]

[PostgreSQL] Tạo vào quản lý PostgreSQL Function

PostgreSQL Function (Còn gọi là Stored Procedures) được sử dụng để thực thi các câu sql để thực hiện một mục đích nhất định. Nó cho phép tái sử dụng bằng cách gọi function thay vì phải viết lại các câu sql. Tạo PostgreSQL Function Để tạo một Function do người dùng định nghĩa mới […]

Sử dụng vòng lặp để INSERT dữ liệu trong PostgreSQL

Trong trường hợp cần để kiểm tra hiệu suất (performance), chúng ta cần một lượng dữ liệu lớn trong CSDL. Vậy để INSERT nhiều dữ liệu vào bảng thì sử dụng vòng lặp for với câu lệnh INSERT là cách làm nhanh nhất. PostgreSQL hỗ trợ sử dụng vòng lặp for với cú pháp nhứ […]

[PostgreSQL] Tạo và quản lý chỉ mục / PostgreSQL Indexes

Các chỉ mục (Indexs) là các bảng tra cứu đặc biệt mà công cụ tìm kiếm dữ liệu (database search engine) sử dụng để tăng tốc độ truy xuất dữ liệu. Nói một cách đơn giản, một index là một con trỏ tới dữ liệu trong một bảng. Bạn có thể hiểu một index trong […]

Dump dữ liệu bảng PostgreSQL thành câu lệnh INSERT Query

Khi làm việc với PostgreSQL, mình cần tạo câu lệnh INSERT để chạy trực tiếp câu lệnh INSERT trên pgAdmin4. Nhưng khi thực hiện dump dữ liệu của bảng ra file, nhưng có 1 vấn đề là không giống như MySQL, PostgreSQL tạo ra câu INSERT khác với cú pháp thông thường của SQL. Ví […]

[PostgreSQL] Liên kết dữ liệu sử dụng UNION

UNION sẽ kết hợp dữ liệu trả về của 2 hay nhiều câu SELECT. Với điều kiện là chúng có cùng cột và cùng tên các cột trả về. Cú pháp lệnh của UNION SELECT     column_1,     column_2 FROM     Table_A UNION SELECT     column_1,     column_2 FROM   […]

[PostgreSQL] Tìm hiểu và sử dụng NATURAL JOIN

NATURAL JOIN cũng là một khái niệm ít người biết đến khi học về SQL. Nó là 1 loại JOIN ít được sử dụng trong câu SQL. Tuy nhiên PostgreSQL hỗ trợ nó. Vì vậy ta hãy tìm hiểu về loại join này nhé! Cú pháp lệnh của NATURAL JOIN SELECT     * FROM […]

[PostgreSQL] Tìm hiểu và sử dụng CROSS JOIN

Khái niệm CROSS JOIN có lẽ ít người biết và thực sự nó cũng rất ít được sử dụng. Chúng ta xem ví dụ sau: Từ hình ảnh trên thì với mỗi phần tử của bảng A thì sẽ liên kết với tất cả các phần tử của bảng B. Vậy chúng ta có tổng […]