Quản trị PostgreSQL với pgAdmin4

Quản trị PostgreSQL với pgAdmin4 rất dễ dàng, trực quan. Nếu đã dùng hệ quản trị PostgreSQL, thì bạn nên dùng pgAdmin để quản trị nó.



pgAdmin là gì

pgAdmin là công cụ miễn phí, mã nguồn mở, có sẵn khi bạn cài đặt PostgreSQL. Đây là công cụ đồ họa rất hay, trực quan, dễ dùng, nó giúp bạn quản trị PostgreSQL rất dễ dàng. Mở pgAdmin sẽ hiện màn hình như sau:

Nhắp mục Servers ở cột trái rồi nhập mật khẩu cho user postgree. Xong OK

Màn hình quản trị PostgreSQL sẽ hiện ra, có 1 database tên postgres được tạo sẵn. Và bạn có thể tạo thêm các database khác.

Tạo database Postgresql

Sau khi kết nối, việc đầu tiên khi quản trị PostgreSQL với pgAdmin4 là tạo database. Dễ thôi. Nhắp nút phải chuột tại mục Databases bên cột trái rồi chọn Create , chọn Database

Nhập tên database  (ví dụ laptop),  rồi nhắp nút Save

Giờ thì database laptop đã có

Tạo table trong postgresql

Muốn tạo tạo table trong postgresql, thực hiện như sau: Nhắp vào tên database , chọn Schemas , tiếp tục nhắp public rồi nhắp phải vào Tables chọn Create và chọn Table  (hình dưới)

Nhập tên table rồi nhắp Columns

Nhắp nhắp nút +  và khai báo tên các cột , kiểu dữ liệu, khóa chính và các thuộc tính cho các cột

Sau khi nhắp Save bạn đã có table

Chỉ định khóa chính tự động tăng trong table

Để chỉ định khóa chính tự động tăng, bạn nhắp phải chuột tại tên table, chọn Properties

Trong màn hình hiện ra, thực hiện theo gợi ý như hình: Nhắp tab Columns rồi nhắp Edit tạo cột id (khóa chính), chọn tab Contrains và nhắp nút Itentity  + khai báo các giá trị ban đầu, giá trị tăng mỗi lần thêm record.

Xem cấu trúc trong table

Muốn xem cấu trúc của table để chỉnh sửa thì nhắp nút phải chuột tại tên table rồi chọn tab Columns. Tại đây bạn có thể điều chỉnh tên field kiểu dữ liệu và thuộc tính các field.

Xem và hiệu chỉnh dữ liệu trong table

Có thể xem trực quan và chỉnh dữ liệu trong table dễ dàng, thực hiện như sau: Nhắp nút phải chuột tại tên table rồi chọn View/Edit data và chọn All Rows.

Tạo quan hệ giữa hai table trong PostreSQL

PostreSQL là chương trình quản trị cơ sở dữ liệu quan hệ. Do đó trong quản trị PostgreSQL với pgAdmin4 , bạn cần phải biết tạo quan hệ giữa hai table. Ví dụ như hình dưới, là quan hệ giữa 2 table nha_sx (field id) và table san_pham (field id_nhasx) . Trong đó field id_nhasx là khóa ngoại bên table san_pham

Đầu tiên bạn mở bảng san_pham, mở tiếp Contraints

Nhắp tab General rồi nhập tên (tùy ý),

Tiếp theo nhắp tab Columns rồi  chỉ định field làm khóa ngoại, khóa chính. Xong nhắp nút Add

Cuối cùng là chọn tab Action rồi chỉ định hành động cho hoạt động Update dữ liệu và xóa dữ liệu. Xong thì nhắp Save

Xem ERD của database

Sau khi tạo quan hệ cho các table, bạn muốn xem sơ đồ trực quan các table, các field trong đó và quan hệ giữa các table thì dễ thôi, nhắp nút phải tại tên database rồi chọn ERD for database. Cấu trúc các table và các quan hệ giữa chúng sẽ hiện ra, bạn có thể kéo để xem cho rõ và đẹp hơn.

Phát sinh các script để tạo, chọn, thêm sửa xóa dữ liệu trong table

Chức năng phát sinh script giúp bạn quản trị PostgreSQL với pgAdmin4 tốt hơn rất nhiều. Vì ban không cần phải viết câu lệnh sql dài dòng, dễ sai, mất thời gian. Thực hiện  bằng cách nhắp nút phải chuột tại tên table, chọn Script rồi chọn mục muốn thực hiện.

Phát sinh script chèn dữ liệu vào table

Chọn mục Insert script rồi nhập dữ liệu, có thể chèn nhiều dòng, rồi nhắp nút thực thi

Phát sinh script select dữ liệu trong table

Chọn mục Select script rồi nhắp nút thực thi sẽ thấy dữ liệu hiện ra.

Phát sinh script tạo table

Chọn mục Create script rồi nhập tên bàng, các  field, khóa chính… rồi nhắp nút thực thi sẽ có table mới.

Xóa table trong database PostgreSQL

Muốn xóa table thì đơn giản thôi nhắp nút phải chuột tại tên table rồi chọn Delete, nhưng cẩn thận không hối hận nhé, thử xóa là mất luôn.

Query tool trong pgAdmin

Đây là công cụ giúp bạn thực thi các câu lệnh sql. Mở công cụ bằng cách nhắp nút phảu chuột tại tên Database hoặc tên Table rồi chọn lệnh Query Tool. Sau đó nhập câu lệnh SQL cần chạy rồi nhắp nút thực thi. Đây là công cụ rất cần thiết để thực hiện các thao tác quản trị dữ liệu trong database.

Các khái niệm trong PostgreSQL

Trong PostgreSQL, bạn có thể tạo nhiều database. Mỗi database có thể tạo nhiều schema. Trong mỗi schema có thể tạo nhiều table

Database

Mỗi database trong PostgreSQL chứa nhiều thứ trong đó, bao gồm schema,  schema, cast, publication, extensions, event trigger. Mỗi publication là nơi lưu các thay đổi của các table trong các quá trình replication.
Event trigger chứa các trgiger sự kiện trong database cho các lệnh ddl_command_start , ddl_command_end , sql_drop.

Sự kiện ddl_command_start xảy ra ngay trước khi thực thi các lệnh CREATE, ALTER, DROP, SECURITY LABEL, COMMENT, GRANT , REVOKE. No check whether the affected object exists or doesn’t exist is performed before the event trigger fires. As an exception, however, this event does not occur for DDL commands targeting shared objects — databases, roles, and tablespaces — or for commands targeting event triggers themselves. The event trigger mechanism does not support these object types. ddl_command_start also occurs just before the execution of a SELECT INTO command, since this is equivalent to CREATE TABLE AS.

Schema

Trong mỗi database, bạn có thể tạo nhiều schema,. Khi tạo database, luôn có sẵn 1 schema có tên là public và bạn có thể tạo thêm nhiều schema với tên khác nhau. Các câu SQL query khi thực thi sẽ chạy dưới schema public trừ phi bạn chỉ định cụ thế schama khác.

Mỗi schema chứa nhiều thứ trong đó: các table, các view, function, các constraint, index, sequence… Như vậy schema giống như một namespace, giúp bạn tổ chức tách bạch nhiều thứ trong database của mình. Ví dụ như  ecommerce, auth …

Table

Mỗi table là bảng chứa dữ liệu có nhiều cột nhiều hàng. Mỗi cột có 1 tên và có 1 kiểu dữ liệu được xác định trước, như integer, boolean


Thôi, dài quá rồi nhỉ 🙂 . Nghỉ đi. Còn nếu chưa và muôn tham khảo thêm thì link đây:

https://www.pgadmin.org/docs/pgadmin4/8.8/getting_started.html
https://www.w3schools.com/postgresql/postgresql_pgadmin4.php