MySQL
Data source: External MySQLStandard Edition+Présentation
MySQL peut être connecté à NocoBase en tant que base de données externe. Une fois la connexion établie, NocoBase lit les tables, les champs et les vues de MySQL, puis les utilise comme tables de données dans la source de données externe.
Contrairement à la base de données principale, la structure réelle des tables MySQL externes reste gérée par le système métier d’origine, le client de base de données ou les scripts de migration. NocoBase se charge de lire la structure, d’enregistrer les métadonnées des champs et de configurer les blocs de pages, les autorisations, les workflows et les API.
Les scénarios adaptés à l’utilisation de MySQL externe sont les suivants :
- Connecter la base de données MySQL de systèmes métier existants tels qu’un ERP, un MES, un WMS ou un CRM
- Créer une interface de gestion avec NocoBase sans migrer les données historiques
- Appliquer des contrôles d’accès, des traitements par workflow, des corrections de données ou des affichages de rapports aux tables existantes
- Continuer à faire gérer la structure de la base de données par le DBA, les scripts de migration ou le système d’origine
MySQL externe n’est pas la base de données système de NocoBase. NocoBase ne prend pas en charge ses sauvegardes, restaurations, migrations ni modifications de structure de tables.
Installation du plugin
Ce plugin est un plugin commercial. Pour connaître la procédure d’activation, consultez le guide d’activation des plugins commerciaux.
Ajouter une source de données
Dans « Gestion des sources de données », cliquez sur « Add new », sélectionnez MySQL, puis renseignez les informations de connexion.

Voici les configurations de connexion courantes :
Si MySQL contient beaucoup d’objets, réduisez d’abord le périmètre à l’aide de Database, Table prefix et de « Collections ». Ne connectez que les tables et les vues utilisées par l’application actuelle afin de simplifier la configuration ultérieure des autorisations, la conception des pages et la maintenance de la synchronisation.
Sélectionner les tables de données
Après avoir renseigné les informations de connexion, vous pouvez cliquer sur « Load Collections » pour charger les tables et les vues disponibles dans MySQL. Les résultats dépendent du compte de connexion, de Database, de Table prefix et de la configuration « Collections ».
Par défaut, « Add all collections » est activé, ce qui signifie que toutes les tables et les vues du périmètre courant sont connectées. Si vous souhaitez ne connecter qu’une partie des objets, désactivez « Add all collections », puis sélectionnez les tables ou les vues nécessaires dans la liste.

Une source de données externe peut connecter au maximum 500 tables ou vues à la fois. Si MySQL contient beaucoup d’objets, il est recommandé de réduire d’abord le périmètre à l’aide de Database, Table prefix ou de « Collections ».
Synchroniser et configurer les champs
La structure des tables MySQL externes est gérée du côté de la base de données. NocoBase ne crée pas de champs dans MySQL externe, ne modifie pas le type des champs et ne supprime pas les champs réels.
Lorsque la structure des tables change côté MySQL, vous pouvez exécuter « Sync from database » dans la source de données afin de relire les métadonnées des tables et des champs. La synchronisation met à jour les tables de données, les champs, les clés primaires, les clés uniques et les informations de mappage des types de champs enregistrés dans NocoBase, mais elle ne supprime ni les tables ni les données réelles dans MySQL.
Après la synchronisation des champs, vous pouvez configurer dans NocoBase le libellé du champ, son type (Field type) et son composant (Field interface). Si vous devez créer des champs de relation NocoBase, les métadonnées de relation sont également enregistrées dans NocoBase ; aucun champ de clé étrangère réel n’est automatiquement ajouté aux tables MySQL.
Mappage des types de champs
NocoBase mappe automatiquement les types de champs MySQL vers un Field type et un Field interface appropriés. Vous pouvez ajuster le mode d’affichage dans la configuration du champ.
Les mappages courants sont les suivants :
Les types de champs MySQL non pris en charge sont affichés séparément dans la configuration des champs. Ces champs doivent faire l’objet d’une adaptation par développement avant de pouvoir être utilisés comme des champs ordinaires dans NocoBase.
Clé primaire et identifiant unique des enregistrements
Pour les tables de données utilisées dans les blocs de pages et pour l’édition, il est recommandé de disposer d’une clé primaire ou d’un champ unique. NocoBase utilise en priorité la clé primaire comme identifiant unique de l’enregistrement.
Si vous connectez une vue, une table sans clé primaire ou une table avec une clé primaire composite, vous devez définir manuellement « Record unique key » dans la configuration de la table de données. En l’absence d’identifiant unique disponible, les blocs de pages peuvent ne pas pouvoir afficher, modifier ou supprimer correctement les enregistrements.

- Base de données externe — Consultez la configuration générale et les instructions de gestion des bases de données externes
- Gestion des sources de données — Consultez l’accès aux sources de données et leur mode de gestion
- Champs des tables de données — Consultez les types de champs et les explications sur le mappage des champs

