Thao tác với Bảng
TablePro cung cấp bộ công cụ đầy đủ để tạo, chỉnh sửa và quản lý các bảng cơ sở dữ liệu thông qua giao diện trực quan. Thiết kế bảng mới với trình chỉnh sửa cột, quản lý ràng buộc và index, và thực hiện các thao tác phổ biến như xóa, truncate và sao chép — tất cả mà không cần viết SQL thủ công.
Tạo Bảng
Mở Trình Thiết Kế Bảng
Để tạo bảng mới:
Mở Trình Thiết Kế
Click chuột phải trong sidebar và chọn Create New Table…, hoặc nhấn Cmd+Shift+N
Đặt Tên Bảng
Nhập tên bảng và xác minh database/schema đích
Thêm Cột
Định nghĩa các cột bằng trình chỉnh sửa cột hoặc template cột
Thiết Lập Ràng Buộc
Cấu hình primary key, foreign keys, indexes và check constraints
Xem Lại SQL
Mở rộng phần SQL Preview để xác minh DDL được tạo
Tạo
Click Create Table (hoặc nhấn Cmd+Return) để thực thi
Trình Chỉnh Sửa Cột
Trình chỉnh sửa cột hiển thị tất cả các cột trong layout dạng bảng. Mỗi cột hiển thị tên, kiểu dữ liệu và các thuộc tính chính trong một cái nhìn.
Thêm Cột
Thêm cột theo hai cách:
- Thủ công: Click nút + để thêm cột trống
- Từ Template: Click menu Template để chèn cột đã được cấu hình sẵn
Các template cột có sẵn:
| Template | Tên Cột | Kiểu | Ghi chú |
|---|
| ID (Auto Increment) | id | INT | NOT NULL, AUTO_INCREMENT |
| UUID | id | UUID / VARCHAR(36) | NOT NULL, tùy thuộc database |
| Name (VARCHAR) | name | VARCHAR(255) | NOT NULL, mặc định '' |
| Email | email | VARCHAR(255) | NOT NULL |
| Description (TEXT) | description | TEXT | Nullable |
| Created At | created_at | TIMESTAMP | NOT NULL, mặc định NOW() |
| Updated At | updated_at | TIMESTAMP | NOT NULL, mặc định NOW() |
| Is Active (BOOLEAN) | is_active | BOOLEAN / TINYINT(1) | NOT NULL, mặc định TRUE |
Panel Chi Tiết Cột
Click vào bất kỳ cột nào để mở panel chi tiết ở bên phải. Panel chi tiết cho phép bạn cấu hình mọi thuộc tính của cột:
| Thuộc tính | Mô tả |
|---|
| Name | Tên cột |
| Data Type | Kiểu dữ liệu với trình chọn được phân loại (Numeric, String, Date/Time, Binary, Other) |
| Length | Độ dài ký tự hoặc độ dài hiển thị (cho VARCHAR, CHAR, v.v.) |
| Precision | Độ chính xác thập phân (cho DECIMAL, NUMERIC) |
| Not Null | Có không cho phép giá trị NULL không |
| Default | Biểu thức giá trị mặc định |
| Auto Increment | Số nguyên tự động tăng (chỉ dành cho kiểu số nguyên) |
| Unsigned | Số không dấu (chỉ MySQL/MariaDB) |
| Comment | Chú thích/mô tả cột |
Nhấn Escape để đóng panel chi tiết và trả lại focus cho danh sách cột.
Sắp Xếp Lại và Xóa Cột
- Di chuyển lên/xuống: Sử dụng các nút mũi tên trên mỗi hàng cột
- Xóa: Click nút xóa để loại bỏ một cột
Các Kiểu Dữ Liệu theo Database
Trình chọn kiểu chỉ hiển thị các kiểu dữ liệu có sẵn cho database bạn đang kết nối.
MySQL/MariaDB
PostgreSQL
SQLite
| Danh mục | Kiểu |
|---|
| Numeric | INT, BIGINT, SMALLINT, TINYINT, MEDIUMINT, DECIMAL, FLOAT, DOUBLE |
| String | VARCHAR, CHAR, TEXT, MEDIUMTEXT, LONGTEXT, TINYTEXT |
| Date/Time | DATE, TIME, DATETIME, TIMESTAMP, YEAR |
| Binary | BLOB, BINARY, VARBINARY |
| Other | BOOLEAN, JSON, ENUM, SET |
| Danh mục | Kiểu |
|---|
| Numeric | INT, BIGINT, SMALLINT, SERIAL, BIGSERIAL, DECIMAL, FLOAT, DOUBLE |
| String | VARCHAR, CHAR, TEXT |
| Date/Time | DATE, TIME, DATETIME, TIMESTAMP |
| Binary | BLOB, BINARY, VARBINARY |
| Other | BOOLEAN, JSON, JSONB, UUID |
| Danh mục | Kiểu |
|---|
| Numeric | INT, BIGINT, SMALLINT, DECIMAL, FLOAT, DOUBLE |
| String | VARCHAR, CHAR, TEXT |
| Date/Time | DATE, TIME, DATETIME, TIMESTAMP |
| Binary | BLOB, BINARY, VARBINARY |
| Other | BOOLEAN, JSON |
Ràng Buộc
Primary Key
Chọn một hoặc nhiều cột làm primary key bằng các checkbox trong phần Primary Key. Một cảnh báo xuất hiện nếu không có primary key nào được chọn.
Bảng không có primary key không được khuyến khích. Luôn định nghĩa primary key để đảm bảo tính toàn vẹn dữ liệu và hiệu suất query.
Foreign Keys
Thêm các ràng buộc foreign key tham chiếu đến bảng khác:
| Thuộc tính | Mô tả |
|---|
| Name | Tên ràng buộc (tự động tạo nếu để trống) |
| Columns | Cột nội bộ |
| Referenced Table | Bảng đích |
| Referenced Columns | Cột đích |
| On Delete | NO ACTION, CASCADE, SET NULL, SET DEFAULT, RESTRICT |
| On Update | NO ACTION, CASCADE, SET NULL, SET DEFAULT, RESTRICT |
Indexes
Tạo indexes trong quá trình tạo bảng:
| Thuộc tính | Mô tả |
|---|
| Name | Tên index |
| Columns | Các cột được bao gồm trong index |
| Unique | Index có áp dụng tính duy nhất không |
| Type | BTREE, HASH, GIST (PostgreSQL), GIN (PostgreSQL) |
Check Constraints
Có sẵn cho PostgreSQL và SQLite. Định nghĩa các ràng buộc check có tên với biểu thức SQL:
| Thuộc tính | Mô tả |
|---|
| Name | Tên ràng buộc |
| Expression | Biểu thức SQL (ví dụ: age >= 0) |
Tùy Chọn Nâng Cao
Mở rộng phần Advanced Options để cấu hình các thiết lập đặc thù database:
MySQL/MariaDB
PostgreSQL
SQLite
| Tùy chọn | Mặc định | Mô tả |
|---|
| Engine | InnoDB | Storage engine |
| Charset | utf8mb4 | Character set |
| Collation | utf8mb4_unicode_ci | Collation |
| Comment | — | Chú thích bảng |
| Tùy chọn | Mặc định | Mô tả |
|---|
| Tablespace | — | PostgreSQL tablespace |
| Comment | — | Chú thích bảng |
| Tùy chọn | Mặc định | Mô tả |
|---|
| Comment | — | Chú thích bảng |
SQL Preview
Mở rộng phần SQL Preview để xem câu lệnh CREATE TABLE chính xác sẽ được thực thi. Bạn có thể sao chép nó vào clipboard bằng nút copy.
Import DDL
Đã có sẵn câu lệnh CREATE TABLE? Click nút Import trong thanh công cụ để dán DDL hiện có. TablePro phân tích câu lệnh và tự động điền vào trình chỉnh sửa cột.
Click Import
Click nút Import (biểu tượng vuông-và-mũi-tên-lên) trong thanh công cụ của table designer
Dán DDL
Dán câu lệnh CREATE TABLE của bạn vào trình chỉnh sửa văn bản
Import
Click Import để phân tích và điền vào designer
Sao Chép từ Bảng Hiện Có
Sao chép cấu trúc của bảng hiện có vào designer:
- Click nút Duplicate trong thanh công cụ
- Chọn một bảng từ danh sách các bảng hiện có
- Click Duplicate để tải các cột và primary keys của nó
- Tên bảng mới mặc định là
tên_gốc_copy
Sao chép một bảng chỉ sao chép định nghĩa cột và primary key. Foreign keys, indexes và các tùy chọn nâng cao không được sao chép tự động.
Template Bảng
Lưu các cấu trúc bảng thường dùng dưới dạng template để sử dụng lại nhanh chóng.
Lưu Template
- Thiết kế bảng của bạn với các cột, kiểu và ràng buộc
- Click nút Save (biểu tượng vuông-và-mũi-tên-xuống) trong thanh công cụ
- Nhập tên template
- Click Save
Templates được lưu trong ~/Library/Application Support/TablePro/table_templates.json.
Tải Template
- Click nút Load (biểu tượng folder) trong thanh công cụ
- Chọn một template từ danh sách
- Click Load để điền vào designer
Tải template giữ nguyên tên bảng và database hiện tại của bạn. Chỉ định nghĩa cột và ràng buộc được thay thế.
Quản Lý Templates
- Xóa: Click biểu tượng thùng rác bên cạnh template trong hộp thoại Load
- Templates tồn tại qua các phiên và kết nối
Các Thao Tác với Bảng
Click chuột phải vào bảng trong sidebar để truy cập các thao tác này.
Xóa Bảng (Drop Table)
Xóa vĩnh viễn một bảng và toàn bộ dữ liệu của nó.
- Click chuột phải vào bảng (hoặc chọn nhiều bảng)
- Chọn Delete
- Cấu hình các tùy chọn trong hộp thoại xác nhận
- Click OK để thực thi
Các tùy chọn theo database:
MySQL/MariaDB
PostgreSQL
SQLite
| Tùy chọn | Mô tả |
|---|
| Ignore foreign key checks | Tạm thời vô hiệu hóa kiểm tra foreign key |
| Cascade | Không được hỗ trợ |
| Tùy chọn | Mô tả |
|---|
| Ignore foreign key checks | Không được hỗ trợ (sử dụng CASCADE thay thế) |
| Cascade | Xóa tất cả các đối tượng phụ thuộc (views, foreign keys) |
| Tùy chọn | Mô tả |
|---|
| Ignore foreign key checks | Tạm thời vô hiệu hóa kiểm tra foreign key |
| Cascade | Không được hỗ trợ |
Xóa bảng là không thể hoàn tác. Luôn sao lưu dữ liệu quan trọng trước khi xóa bảng.
Truncate Bảng
Xóa tất cả các hàng khỏi bảng trong khi vẫn giữ cấu trúc bảng.
- Click chuột phải vào bảng (hoặc chọn nhiều bảng)
- Chọn Truncate
- Cấu hình các tùy chọn trong hộp thoại xác nhận
- Click OK để thực thi
Các tùy chọn theo database:
MySQL/MariaDB
PostgreSQL
SQLite
| Tùy chọn | Mô tả |
|---|
| Ignore foreign key checks | Tạm thời vô hiệu hóa kiểm tra foreign key |
| Cascade | Không được hỗ trợ cho TRUNCATE |
| Tùy chọn | Mô tả |
|---|
| Ignore foreign key checks | Không được hỗ trợ (sử dụng CASCADE thay thế) |
| Cascade | Truncate tất cả các bảng được liên kết bởi foreign keys |
| Tùy chọn | Mô tả |
|---|
| Ignore foreign key checks | Tạm thời vô hiệu hóa kiểm tra foreign key |
| Cascade | Không được hỗ trợ |
Truncate nhanh hơn DELETE FROM table vì nó không tạo các log xóa từng hàng riêng lẻ. Tuy nhiên, nó reset các bộ đếm auto-increment.
Thao Tác Hàng Loạt
Bạn có thể chọn nhiều bảng trong sidebar và áp dụng Drop hoặc Truncate cho tất cả cùng một lúc. Các tùy chọn giống nhau được áp dụng cho mọi bảng được chọn.
- Giữ
Cmd và click để chọn nhiều bảng
- Click chuột phải và chọn Delete hoặc Truncate
- Cấu hình các tùy chọn một lần trong hộp thoại
- Tất cả các bảng được chọn sẽ được xử lý
Quản Lý View
Database view là các bảng ảo được định nghĩa bởi câu lệnh SQL. TablePro hiển thị view trong sidebar với biểu tượng mắt và màu tím.
Tạo View
Tạo view mới bằng cách mở tab SQL editor với template:
- Click chuột phải trong sidebar và chọn Create New View…
- Hoặc vào File > New View…
- Tab SQL editor mới mở với template CREATE VIEW
- Sửa tên view và câu lệnh SELECT
- Thực thi query để tạo view
Template tự động thích ứng với loại database:
MySQL/MariaDB
PostgreSQL
SQLite
CREATE VIEW view_name AS
SELECT column1, column2
FROM table_name
WHERE condition;
CREATE OR REPLACE VIEW view_name AS
SELECT column1, column2
FROM table_name
WHERE condition;
CREATE VIEW IF NOT EXISTS view_name AS
SELECT column1, column2
FROM table_name
WHERE condition;
Chỉnh Sửa Định Nghĩa View
Sửa đổi định nghĩa SQL của view hiện có:
- Click chuột phải vào view trong sidebar
- Chọn Edit View Definition
- Định nghĩa view hiện tại được tải và mở trong tab SQL editor mới
- Sửa đổi query và thực thi để cập nhật view
Với MySQL/MariaDB, bạn có thể dùng ALTER VIEW để sửa view. Với PostgreSQL, dùng CREATE OR REPLACE VIEW. SQLite không hỗ trợ ALTER VIEW — bạn phải drop và tạo lại view.
Xóa View
Xóa view khỏi database:
- Click chuột phải vào view trong sidebar
- Chọn Drop View
- Xác nhận xóa
View không lưu trữ dữ liệu, nên xóa view chỉ xóa định nghĩa view — dữ liệu bảng gốc vẫn nguyên vẹn.
Context menu sidebar thay đổi khi bạn click chuột phải vào view:
| Hành động | Bảng | View |
|---|
| Show Structure | Có | Có |
| Export | Có | Có |
| Import | Có | Không |
| Truncate | Có | Không |
| Edit Definition | Không | Có |
| Delete / Drop | Có | Có |
Thao Tác với Database
Tạo Database
Tạo database mới trực tiếp từ UI (MySQL/MariaDB):
Mở Database Switcher
Click tên database trong thanh công cụ hoặc nhấn Cmd+K để mở database switcher
Click Create
Click nút Create trong thanh công cụ của database switcher
Cấu hình
Nhập tên, chọn character set và collation
Tạo
Click Create để thực thi
Các character sets và collations có sẵn:
| Charset | Collations |
|---|
| utf8mb4 | utf8mb4_unicode_ci, utf8mb4_general_ci, utf8mb4_bin |
| utf8 | utf8_unicode_ci, utf8_general_ci, utf8_bin |
| latin1 | latin1_swedish_ci, latin1_general_ci, latin1_bin |
| ascii | ascii_general_ci, ascii_bin |
Database Switcher
Chuyển đổi nhanh giữa các database trên cùng một kết nối:
- Click tên database trong thanh công cụ
- Duyệt danh sách các database có sẵn với metadata
- Tìm kiếm theo tên để lọc
- Double-click hoặc chọn và click Open để chuyển
Database switcher hiển thị các database gần đây để truy cập nhanh và hỗ trợ làm mới danh sách database.
Phím Tắt
| Thao tác | Phím tắt |
|---|
| Tạo bảng mới | Cmd+N |
| Xác nhận tạo bảng | Cmd+Return |
| Xóa bảng đã chọn | Cmd+Delete |
| Copy tên bảng | Cmd+C (trong sidebar) |
| Export bảng | Cmd+E (trong sidebar) |
| Import dữ liệu | Cmd+I (trong sidebar) |
Bước Tiếp Theo