Tài liệu này được dịch bởi AI. Đối với bất kỳ thông tin không chính xác nào, vui lòng tham khảo phiên bản tiếng Anh
Sử dụng cơ sở dữ liệu ngoài hiện có làm nguồn dữ liệu. Hiện tại, NocoBase hỗ trợ các cơ sở dữ liệu ngoài như MySQL, MariaDB, PostgreSQL, MSSQL và Oracle.
Sau khi kích hoạt plugin, bạn có thể chọn và thêm cơ sở dữ liệu ngoài từ menu thả xuống "Add new" trong phần quản lý nguồn dữ liệu.

Điền thông tin của cơ sở dữ liệu bạn muốn kết nối.

Sau khi kết nối với cơ sở dữ liệu ngoài, NocoBase sẽ đọc trực tiếp tất cả các bộ sưu tập trong nguồn dữ liệu. Cơ sở dữ liệu ngoài không hỗ trợ thêm bộ sưu tập hoặc sửa đổi cấu trúc bảng trực tiếp. Nếu cần sửa đổi, bạn có thể thực hiện thông qua một ứng dụng khách (client) cơ sở dữ liệu, sau đó nhấp vào nút "Làm mới" trên giao diện để đồng bộ hóa.

Cơ sở dữ liệu ngoài sẽ tự động đọc và hiển thị các trường của các bộ sưu tập hiện có. Bạn có thể nhanh chóng xem và cấu hình tiêu đề, kiểu dữ liệu (Field type) và kiểu giao diện người dùng (UI type) của trường. Bạn cũng có thể nhấp vào nút "Chỉnh sửa" để sửa đổi thêm các cấu hình khác.

Vì cơ sở dữ liệu ngoài không hỗ trợ sửa đổi cấu trúc bảng, nên khi thêm trường mới, kiểu duy nhất có sẵn là trường liên kết (association field). Trường liên kết không phải là trường thực tế mà được sử dụng để thiết lập kết nối giữa các bộ sưu tập.

Để biết thêm chi tiết, hãy xem chương Trường bộ sưu tập/Tổng quan.
NocoBase sẽ tự động ánh xạ các kiểu trường từ cơ sở dữ liệu ngoài sang kiểu dữ liệu (Field type) và kiểu giao diện người dùng (UI type) tương ứng.
| PostgreSQL | MySQL/MariaDB | NocoBase Data Type | NocoBase Interface Type |
|---|---|---|---|
| BOOLEAN | BOOLEAN TINYINT(1) | boolean | checkbox switch |
| SMALLINT INTEGER SERIAL SMALLSERIAL | TINYINT SMALLINT MEDIUMINT INTEGER | integer boolean sort | integer sort checkbox switch select radioGroup |
| BIGINT BIGSERIAL | BIGINT | bigInt sort | integer sort checkbox switch select radioGroup unixTimestamp createdAt updatedAt |
| REAL | FLOAT | float | number percent |
| DOUBLE PRECISION | DOUBLE PRECISION | double | number percent |
| DECIMAL NUMERIC | DECIMAL | decimal | number percent currency |
| VARCHAR CHAR | VARCHAR CHAR | string password uuid nanoid | input phone password color icon select radioGroup uuid nanoid |
| TEXT | TEXT TINYTEXT MEDIUMTEXT LONGTEXT | text json | textarea markdown vditor richText url json |
| UUID | - | uuid | uuid |
| JSON JSONB | JSON | json | json |
| TIMESTAMP | DATETIME TIMESTAMP | date | date time createdAt updatedAt |
| DATE | DATE | dateOnly | datetime |
| TIME | TIME | time | time |
| - | YEAR | datetime | |
| CIRCLE | circle | json circle | |
| PATH GEOMETRY(LINESTRING) | LINESTRING | lineString | Json lineString |
| POINT GEOMETRY(POINT) | POINT | point | json point |
| POLYGON GEOMETRY(POLYGON) | POLYGON | polygon | json polygon |
| GEOMETRY | GEOMETRY | - | - |
| BLOB | BLOB | blob | - |
| ENUM | ENUM | enum | select radioGroup |
| ARRAY | - | array | multipleSelect checkboxGroup |
| BIT | BIT | - | - |
| SET | SET | set | multipleSelect checkboxGroup |
| RANGE | - | - | - |
Các kiểu trường không được hỗ trợ sẽ được hiển thị riêng. Các trường này cần được phát triển để tương thích trước khi có thể sử dụng.

Các bộ sưu tập được hiển thị dưới dạng khối phải được cấu hình Khóa mục tiêu lọc (Filter target key). Khóa mục tiêu lọc dùng để lọc dữ liệu dựa trên một trường cụ thể, và giá trị của trường đó phải là duy nhất. Theo mặc định, khóa mục tiêu lọc là trường khóa chính của bộ sưu tập. Đối với các chế độ xem (views), các bộ sưu tập không có khóa chính hoặc các bộ sưu tập có khóa chính tổng hợp, bạn cần định nghĩa khóa mục tiêu lọc tùy chỉnh.

Chỉ những bộ sưu tập đã cấu hình khóa mục tiêu lọc mới có thể được thêm vào trang.
