Dokumen ini diterjemahkan oleh AI. Untuk ketidakakuratan apa pun, silakan lihat versi bahasa Inggris
Anda dapat menggunakan basis data eksternal yang sudah ada sebagai sumber data. Saat ini, basis data eksternal yang didukung meliputi MySQL, MariaDB, PostgreSQL, MSSQL, dan Oracle.
Setelah mengaktifkan plugin, Anda dapat memilih dan menambahkannya dari menu dropdown "Add new" di manajemen sumber data.

Isi informasi untuk basis data yang ingin Anda hubungkan.

Setelah koneksi dengan basis data eksternal berhasil dibuat, semua koleksi di dalam sumber data akan langsung dibaca. Basis data eksternal tidak mendukung penambahan koleksi atau modifikasi struktur tabel secara langsung. Jika diperlukan modifikasi, Anda dapat melakukannya melalui klien basis data, lalu klik tombol "Refresh" di antarmuka untuk melakukan sinkronisasi.

Basis data eksternal akan secara otomatis membaca dan menampilkan bidang-bidang dari koleksi yang sudah ada. Anda dapat dengan cepat melihat dan mengonfigurasi judul bidang, tipe data (Field type), dan tipe UI (Field interface). Anda juga dapat mengklik tombol "Edit" untuk mengubah konfigurasi lebih lanjut.

Karena basis data eksternal tidak mendukung modifikasi struktur tabel, satu-satunya tipe yang tersedia saat menambahkan bidang baru adalah bidang relasi. Bidang relasi bukanlah bidang aktual, melainkan digunakan untuk membangun koneksi antar koleksi.

Untuk detail lebih lanjut, lihat bab Bidang Koleksi/Ikhtisar.
NocoBase secara otomatis memetakan tipe bidang dari basis data eksternal ke tipe data (Field type) dan tipe UI (Field Interface) yang sesuai.
| 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 | |
| CIRCEL | 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 | - | - | - |
Tipe bidang yang tidak didukung akan ditampilkan secara terpisah. Bidang-bidang ini memerlukan adaptasi pengembangan sebelum dapat digunakan.

Koleksi yang ditampilkan sebagai blok harus memiliki Kunci Target Filter (Filter target key) yang dikonfigurasi. Kunci target filter digunakan untuk memfilter data berdasarkan bidang tertentu, dan nilai bidang harus bersifat unik. Secara default, kunci target filter adalah bidang kunci utama koleksi. Untuk view, koleksi tanpa kunci utama, atau koleksi dengan kunci utama komposit, Anda perlu mendefinisikan kunci target filter kustom.

Hanya koleksi yang memiliki Kunci Target Filter yang dikonfigurasi yang dapat ditambahkan ke halaman.
