Schema, so sánh và đồng bộ
Tính năng trả phí trên trang này: Compare & Sync (gói Starter). Mọi thứ khác trên trang đều miễn phí.
Sửa cấu trúc, đọc DDL trước
Tab Structure cho phép sửa trực tiếp cột, index, khóa ngoại và CHECK constraint của một table. Thay đổi được giữ lại cho tới khi bạn lưu, và Preview SQL (⌘⇧P) hiển thị các câu lệnh ALTER TABLE trước khi chạy. Thay đổi nào xóa bớt một thành phần, đổi kiểu dữ liệu, thêm NOT NULL hay đổi khóa chính đều được hỏi lại trước, kể cả trên connection có mức Safe Mode là Silent.
Index có thể dùng biểu thức làm khóa, ví dụ lower(email). New Table tạo table mới theo cùng cách, kèm bản xem trước SQL cập nhật ngay khi bạn sửa. Trên SQLite, libSQL, Turso và Cloudflare D1, vốn không sửa được khóa ngoại tại chỗ, TablePro viết sẵn script dựng lại table để bạn xem trước. TablePro tự chạy script này trên SQLite và file libSQL cục bộ sau khi bạn xác nhận, còn trên Turso, libSQL từ xa và D1 thì để bạn tự chạy.
- Cấu trúc chỉ đọc
- Redis, Amazon Redshift, CockroachDB, Google BigQuery, Elasticsearch, etcd, Apache Kafka, SurrealDB, Beancount, Google Cloud Spanner, Typesense, Weaviate, Cloudflare R2 SQL, SAP HANA
- Chỉ hỗ trợ một số thay đổi cấu trúc
- MongoDB, TiDB, Databend, Oracle, ClickHouse, Cassandra, ScyllaDB, Amazon DynamoDB, Snowflake, Cloudflare D1, Turso, libSQL, Teradata, Trino


Xem các table liên quan với nhau ra sao
Xem sơ đồ ER (View ER Diagram) vẽ các table và khóa ngoại của schema hiện tại, với ký hiệu crow’s foot cho biết mỗi quan hệ là một-một hay một-nhiều, suy ra từ khóa chính và khóa unique. Table trung gian như product_tags được gộp thành một đường quan hệ nhiều-nhiều. Bạn có thể export sơ đồ ra PNG, sao chép dưới dạng ảnh, hoặc export ra SQL: các câu lệnh CREATE TABLE kèm khóa ngoại.
Sơ đồ là ảnh chụp tại một thời điểm, để đọc và chia sẻ. Muốn sửa table, bạn dùng tab Structure chứ không sửa trên sơ đồ.


Routine, trigger và thư mục trong sidebar
Dưới mỗi schema, sidebar liệt kê procedure, hàm và trigger nếu engine có, và mở mã nguồn của chúng trong một tab chỉ đọc để bạn sao chép hoặc mở trong editor. Redshift, CockroachDB, PGlite và SAP HANA không liệt kê mục nào. Partition của PostgreSQL nằm ngay dưới table cha.
Thư mục cho table và view
Gom table và view vào thư mục bằng cách kéo thả hoặc dùng Di chuyển đến (Move to), ở cả dạng danh sách lẫn dạng cây của sidebar. Ô lọc tìm cả bên trong thư mục. Thư mục chỉ tồn tại trong TablePro và không thay đổi gì trên server; khi bật iCloud Sync, thư mục đi theo bạn sang các máy Mac khác.
Compare & Sync
Compare & Sync: gói Starter
Chọn nguồn và đích, có thể là hai server hoặc hai cơ sở dữ liệu trên cùng một server, rồi Compare & Sync liệt kê mọi table có khác biệt, cùng view, routine và trigger nếu bạn chọn so sánh cả chúng. Ở chế độ dữ liệu, các dòng được ghép theo khóa và từng giá trị khác nhau được đánh dấu, với bộ lọc và giới hạn số dòng cho từng table, nên bạn có thể so sánh lần lượt từng đoạn của một table lớn.
Script được tạo ra sắp xếp theo thứ tự khóa ngoại và viết theo cú pháp mà client của engine đích đọc được. Những câu lệnh làm mất dữ liệu, như xóa cột, thu hẹp kiểu dữ liệu hay xóa dòng, bị giữ lại cho tới khi bạn cho phép trong lần chạy đó, và connection đặt Read-Only không thể được chọn làm đích. Lưu một phép so sánh để chạy lại chỉ bằng một cú nhấp.


Copy To, Duplicate Database và Transfer To
Copy To gửi table, view, routine và trigger, dưới dạng cấu trúc, dữ liệu hoặc cả hai, sang một cơ sở dữ liệu trên bất kỳ connection đã lưu nào, kể cả connection dùng engine khác. Trước khi ghi bất cứ thứ gì, bước xem lại liệt kê câu lệnh DDL, số dòng dự kiến của từng table và mọi kiểu cột bị thay đổi khi chuyển, ví dụ cột ENUM của MariaDB sang PostgreSQL thành VARCHAR và mất danh sách giá trị cho phép. Mệnh đề WHERE và giới hạn số dòng cho từng table giúp bạn chỉ sao chép một phần.
Duplicate Database sao chép nguyên một cơ sở dữ liệu với tên mới trên cùng connection. Transfer To chuyển dòng thẳng vào một table có sẵn trên một connection khác đang mở, có ghép cột và không cần file trung gian. Cả ba đều miễn phí.


Người dùng, session và bảo trì
Các thao tác bảo trì table, như VACUUM và REINDEX trên PostgreSQL hay OPTIMIZE và CHECK trên MySQL, hiển thị câu lệnh SQL trước khi chạy. Bạn cũng có thể tạo, xóa và đổi tên cơ sở dữ liệu và schema ngay từ sidebar, nếu engine hỗ trợ.
Users & Roles
Users & Roles hiển thị quyền của từng user dưới dạng cây, từ server xuống tới từng cột. Lệnh cấp và thu hồi quyền được giữ lại như thay đổi đang chờ lưu và hiển thị câu lệnh SQL trước khi chạy, nên bạn không phải tự viết GRANT.
- Users & Roles
- PostgreSQL, MySQL, MariaDB, PGlite


Server Dashboard
Server Dashboard hiển thị các session đang chạy, chỉ số của server và các query chậm, làm mới theo khoảng thời gian bạn chọn. Nếu engine cho phép, bạn có thể hủy một query đang chạy hoặc kết thúc một session ngay trên dòng của nó; cả hai đều đi qua Safe Mode của connection. Trên SQLite, DuckDB và Typesense, dashboard chỉ hiển thị chỉ số.
- Server Dashboard
- PostgreSQL, MySQL, SQL Server, SQLite, MariaDB, Amazon Redshift, CockroachDB, ClickHouse, DuckDB, Typesense


Trên iPhone và iPad
Ứng dụng cho iPhone và iPad hiển thị cột, index và khóa ngoại của table ở chế độ chỉ đọc. Từ danh sách table, bạn có thể xóa toàn bộ dữ liệu (truncate) hoặc xóa hẳn (drop) một table trên engine SQL, trừ khi connection đặt Read-Only.
Sửa cấu trúc, ER diagram, Compare & Sync, Copy To, Users & Roles và Server Dashboard chỉ có trong ứng dụng Mac.
Dùng được ở đâu
| Tính năng |
|---|
| Sửa cấu trúc với bản xem trước DDLMac: Miễn phíiPhone và iPad: Cột, index và khóa ngoại, chỉ đọc |
| New TableMac: Miễn phíiPhone và iPad: Không có |
| Truncate và drop tableMac: Miễn phíiPhone và iPad: Miễn phí |
| ER diagramMac: Miễn phíiPhone và iPad: Không có |
| Routine, trigger và thư mục tableMac: Miễn phíiPhone và iPad: Không có |
| Compare & SyncMac: Gói StarteriPhone và iPad: Không có |
| Copy To, Duplicate Database và Transfer ToMac: Miễn phíiPhone và iPad: Không có |
| Users & RolesMac: Miễn phíiPhone và iPad: Không có |
| Server Dashboard và bảo trì tableMac: Miễn phíiPhone và iPad: Không có |
Giới hạn nên biết
- Compare & Sync chỉ tạo script cấu trúc giữa hai cơ sở dữ liệu cùng engine, trong đó MySQL và MariaDB được tính là một. Các cặp khác chỉ so sánh để xem, cấu trúc MongoDB không bao giờ có script, và khi đồng bộ dữ liệu giữa hai engine khác nhau, TablePro nhắc bạn kiểm tra cách giá trị được ghi. Để chuyển table sang engine khác, hãy dùng Copy To.
- Đổi thứ tự cột sẽ dựng lại table trên SQLite và trên file libSQL cục bộ, sau khi bạn xác nhận. Trên PostgreSQL, Turso, libSQL từ xa và Cloudflare D1, TablePro viết sẵn script dựng lại và để bạn tự chạy.
- ER diagram chỉ đọc. Đây không phải công cụ thiết kế schema.
- Những session và nội dung query mà Server Dashboard hiển thị được tùy thuộc vào quyền của tài khoản bạn dùng để kết nối.
Tải TablePro
macOS 13 Ventura trở lênApple silicon hoặc Intel