Gestion des bases de données
Softyflow propose deux approches principales pour la gestion des données : les bases de données SQL via des sources de données externes (EDS) et les collections MongoDB. Ce guide couvre les deux approches avec des exemples d'utilisation pratiques.
Avant de vous lancer dans l'intégration de bases de données, assurez-vous d'avoir terminé la configuration de votre projet et de comprendre comment utiliser les bases de données dans vos interfaces web et vos processus.
1. Aperçu
1.1. SQL via EDS (Sources de données externes)
La fonctionnalité de sources de données externes (EDS) de Softyflow vous permet de connecter vos applications à des bases de données d'entreprise existantes. Elle prend en charge une large gamme de bases de données SQL, notamment MySQL, PostgreSQL, Oracle, SQL Server et Snowflake, ainsi que des API externes. Cela permet une intégration transparente avec l'infrastructure de données existante de votre entreprise, ce qui en fait un outil puissant pour les applications de niveau entreprise. Pour une analyse plus approfondie, vous pouvez explorer la documentation sur l'intégration EDS.
La page Sources de données externes (EDS) sert de hub central pour la gestion de toutes les connexions de données externes. Elle offre une vue consolidée de chaque source de données configurée, des bases de données SQL traditionnelles aux API modernes, rationalisant la gestion des données dans vos projets.

La page de gestion des EDS montrant une liste des bases de données et des API configurées.
À partir de cette interface, vous pouvez effectuer plusieurs actions clés :
- Afficher toutes les sources de données : La liste principale affiche le Nom et le Type (par exemple,
PostgreSQL,MySQL,api) de chaque EDS configuré, vous donnant un aperçu clair de vos connexions. - Créer une nouvelle EDS : Le bouton "+ Créer une EDS" ouvre un assistant pour vous guider dans la connexion à une nouvelle source de données externe.
- Gérer les EDS existantes : Chaque source de données de la liste est accompagnée d'options pour modifier, tester ou supprimer la connexion.
La capture d'écran ci-dessus illustre une variété de sources de données configurées. Par exemple, "Test Mysql" est une EDS pour une base de données MySQL, tandis que "Google Calendar API" est une intégration avec une api web. Cela met en évidence la flexibilité de Softyflow, vous permettant de créer des applications qui consolident des données provenant de systèmes divers, tels que des bases de données internes et des services web tiers.
1.2. Collections MongoDB
Pour les projets qui nécessitent flexibilité et rapidité, Softyflow inclut une base de données MongoDB intégrée. Cette option NoSQL est idéale pour le prototypage rapide, le stockage de données spécifiques à l'application et la gestion de données avec des schémas évolutifs ou semi-structurés. Elle vous permet de démarrer rapidement sans les frais généraux de configuration d'une base de données externe.
La page Bases de données internes (Collections) est votre centre de commande pour la gestion de ces collections MongoDB. Elle fournit une interface conviviale pour superviser, créer et gérer toutes les données NoSQL de votre projet.

La page des collections montrant une liste des bases de données MongoDB internes.
À partir de cette page centralisée, vous pouvez effectuer plusieurs actions essentielles :
- Afficher les collections : La liste principale affiche toutes les collections disponibles, en indiquant leur Nom et le Projet auquel elles appartiennent. Dans l'exemple ci-dessus, vous pouvez voir une collection nommée
clients_dbassociée au projet "Gestion Des Factures - groupeg2c". - Créer une nouvelle collection : Le bouton "+ Créer une collection" dans le coin supérieur droit vous permet d'ajouter instantanément une nouvelle collection pour stocker les données de votre application.
- Rechercher et filtrer : La barre de recherche offre un moyen rapide de trouver une collection spécifique par son nom, ce qui est particulièrement utile dans les projets avec de nombreuses collections.
- Naviguer : Si vous avez un grand nombre de collections, les commandes de pagination en bas de la liste facilitent la navigation.
2. SQL via EDS
2.1. Configuration rapide
La connexion à une base de données SQL externe est simple. La page "Ajouter des sources de données externes (EDS)" fournit un formulaire complet pour définir tous les paramètres nécessaires à Softyflow pour établir une connexion. L'exemple ci-dessous montre la configuration d'une base de données MySQL.

Configuration des détails de connexion pour une nouvelle source de données MySQL.
Comme illustré dans l'image, une nouvelle source de données nommée "Test Mysql" est en cours de configuration. Une caractéristique clé de Softyflow est la possibilité de définir des paramètres de connexion distincts pour différents environnements (TEST, UAT, PROD). Ici, les détails de l'environnement TEST, tels que l'hôte (55.71.246.43) et la base de données (softyflow_test), sont en cours de saisie. Cette pratique est cruciale pour un cycle de vie de développement sûr, car elle isole les activités de développement et de test des données de production en direct.
Les principaux champs de configuration comprennent :
- Nom et type d'EDS : Attribuez un nom descriptif à votre connexion pour une identification facile. Sélectionnez le type d'EDS approprié dans le menu déroulant (par exemple,
MySQL,PostgreSQL,Oracle). - Onglets d'environnement (TEST, UAT, PROD) : La configuration spécifique à l'environnement de Softyflow vous permet de gérer les connexions de base de données pour chaque étape du cycle de vie de votre application. Cela garantit que vous vous connectez toujours à la base de données appropriée — une base de données de test pendant le développement, une base de données de pré-production pour les tests d'acceptation par l'utilisateur et votre base de données de production pour l'application en direct.
- Détails de connexion : Ce sont les paramètres standard requis pour se connecter à une base de données, y compris l'
hôte(adresse du serveur), l'utilisateur, lemot de passeet le nom de labase de données.
2.2. Cas d'utilisation courants
Les bases de données SQL sont l'épine dorsale de nombreux systèmes d'entreprise, et l'utilisation d'EDS pour s'y connecter ouvre un large éventail de possibilités :
- Intégration d'entreprise : Connectez de manière transparente vos applications Softyflow à des systèmes d'entreprise existants tels que la gestion de la relation client (CRM), la planification des ressources d'entreprise (ERP) ou d'autres plateformes héritées. Cela vous permet de créer des interfaces et des processus modernes qui exploitent vos données existantes. Pour en savoir plus, consultez nos fonctionnalités d'intégration.
- Entreposage de données et analytique : Accédez et traitez de grands volumes de données à partir de plateformes analytiques comme Snowflake ou Google BigQuery. Cela vous permet de créer des rapports et des tableaux de bord sophistiqués et basés sur les données directement dans Softyflow.
- Synchronisation des données entre systèmes : Créez des flux de travail qui synchronisent les données entre plusieurs systèmes métier. Par exemple, vous pouvez créer un processus qui met à jour votre CRM chaque fois qu'une nouvelle entrée est effectuée dans un système de facturation distinct, garantissant ainsi la cohérence des données dans toute l'entreprise.
3. Collections MongoDB
3.1. Configuration rapide
La création et la gestion d'une collection MongoDB dans Softyflow sont conçues pour être rapides et intuitives. Les collections peuvent être créées directement depuis l'IDE de Softyflow, et leur nature sans schéma offre la flexibilité nécessaire au développement d'applications modernes.
Une fois une collection créée, sa page de gestion, comme illustré ci-dessous pour "demo_collection", devient le hub central pour le contrôle de ses données, environnements et sécurité.

La page de gestion de la collection MongoDB "demo_collection".
Cette page offre un ensemble complet d'outils :
- Gestion de l'environnement : Softyflow organise vos données dans les environnements PROD, UAT et TEST. Cela vous permet de gérer séparément les données pour chaque étape de votre cycle de vie de développement. Vous pouvez rapidement voir le
nombrede documents et latailletotale pour chaque environnement. - Opérations sur les données : Une suite de boutons pour chaque environnement vous permet d'effectuer des opérations de données essentielles, y compris l'affichage, le téléchargement, le téléversement et la suppression de données. Le bouton Migrer est une fonctionnalité puissante pour promouvoir des données d'un environnement à un autre (par exemple, de TEST à UAT).
- Droits d'accès : La sécurité est gérée au niveau de la collection. La section inférieure de la page est dédiée à la définition des autorisations basées sur les rôles. Vous pouvez spécifier quel rôle a les droits de
création,lecture,mise à jouretsuppression(CRUD). L'exemple montre le rôle "Tout le monde" avec des autorisations CRUD complètes, ce qui peut convenir à des données publiques. Cependant, pour la plupart des applications, vous voudrez configurer des rôles plus granulaires et restrictifs pour garantir la sécurité des données.
3.2. Cas d'utilisation courants
La flexibilité des collections MongoDB les rend adaptées à une grande variété d'applications :
- Prototypage et développement rapides : Lorsque vous avez besoin de mettre une application en service rapidement, les collections offrent une solution de stockage de données rapide sans nécessiter une configuration de base de données formelle ou une conception de schéma.
- Paramètres de l'application et préférences de l'utilisateur : Les collections sont parfaites pour stocker des données de configuration, des paramètres spécifiques à l'utilisateur et des informations de personnalisation, car la structure peut facilement s'adapter à de nouvelles options.
- Données temporaires et de session : C'est un excellent choix pour stocker des données transitoires telles que les informations de session utilisateur, les journaux ou les résultats de calculs temporaires.
- Schémas de données flexibles ou évolutifs : Si votre structure de données est susceptible de changer au fil du temps ou si différents documents doivent avoir des champs différents, la nature sans schéma de MongoDB est un avantage significatif.
4. Utilisation dans les widgets
L'une des fonctionnalités les plus puissantes de Softyflow est la possibilité d'intégrer vos bases de données directement avec les widgets de l'interface web. Cela vous permet de créer facilement des interfaces utilisateur dynamiques et basées sur les données.
Dans le concepteur d'interface utilisateur de Softyflow, vous pouvez connecter des widgets tels que des listes déroulantes et des tableaux à vos sources de données. L'image ci-dessous donne un aperçu général d'un widget "Sélection" (liste déroulante) en cours de configuration pour récupérer ses options à partir d'une base de données externe.

Configuration d'une liste déroulante "Catégorie" pour être peuplée à partir de l'EDS "Test Mysql".
Dans cet exemple, le panneau de configuration de droite montre que la source de données du widget est définie sur "EDS" et que la base de données spécifique est "Test Mysql". Cette configuration simple signifie que les options disponibles dans la liste déroulante seront peuplées dynamiquement à partir de votre base de données MySQL, créant une expérience utilisateur interactive et riche en données.
4.1. Widgets de liste déroulante/sélection
Les widgets de sélection sont couramment utilisés pour présenter aux utilisateurs une liste de choix. Remplir ces choix à partir d'une base de données est une exigence fréquente.
4.1.1. SQL via EDS
Lorsque vous utilisez une base de données SQL, vous pouvez configurer le widget de sélection pour récupérer des données à l'aide d'une requête.

Configuration détaillée d'EDS pour un widget de sélection.
La configuration implique quelques étapes clés :
- Source de données : Définissez-la sur
EDS. - Base de données : Choisissez la connexion EDS spécifique, telle que
Test Mysql. - Libellé et valeur : Spécifiez quelles colonnes de votre base de données serviront de texte d'affichage (Libellé) et d'identifiant sous-jacent (Valeur) pour chaque option. Par exemple, vous pouvez utiliser une colonne
nom_produitpour le libellé et une colonneid_produitpour la valeur. - Source EDS : Cliquer sur le bouton Modifier ouvre un éditeur de requêtes, où vous pouvez écrire la requête SQL pour récupérer les données.
Vous pouvez également écrire des requêtes dynamiques qui changent en fonction d'autres données de votre application.

Une requête SQL dynamique utilisant la variable `type_audit`.
La requête ci-dessus, "SELECT * FROM planification where audit_type = " + {{audit_type}}, est un exemple puissant de filtrage dynamique. La syntaxe {{audit_type}} vous permet d'intégrer la valeur d'une variable du modèle de données de votre application directement dans la requête SQL. Si un utilisateur effectue une sélection dans une autre partie du formulaire qui met à jour la variable audit_type, cette liste déroulante se rafraîchira automatiquement pour afficher une liste d'options filtrée. C'est une technique clé pour créer des formulaires interactifs et réactifs.
4.1.2. Collections MongoDB
La connexion d'un widget de sélection à une collection MongoDB est tout aussi simple.

Remplissage d'une liste déroulante à partir de la collection "demo_collection".
Les options de configuration sont adaptées à MongoDB :
- Source de données : Définissez sur
Collection. - Collection : Sélectionnez la collection MongoDB souhaitée (par exemple,
demo_collection). - Libellé et valeur : Mappez-les aux champs de vos documents MongoDB. Par exemple, le
libellépourrait êtrenom_categorieet lavaleurpourrait être l'_iddu document. - Requête, trier par et limite : Ces champs vous donnent un contrôle précis. Vous pouvez trier les options (par exemple, par
createdAten ordre décroissant :-1), limiter le nombre de résultats et ouvrir l'éditeur de requête pour filtrer les documents.
Pour des scénarios plus complexes, vous pouvez utiliser un pipeline d'agrégation MongoDB pour transformer les données avant qu'elles ne soient affichées.

Un pipeline d'agrégation pour filtrer et remodeler les données pour une liste déroulante.
Le pipeline ci-dessus effectue trois étapes :
$match: Filtre les documents, en sélectionnant uniquement ceux où lesociete_idcorrespond à la valeur dynamique de{{societe_label}}.$project: Remodèle les documents pour créer un champlibelléetvaleur, qui sont requis par le widget de sélection. C'est utile pour adapter votre structure de données existante aux besoins du widget.$sort: Trie les résultats finaux par le champlibellé.
4.2. Widgets de tableau
Les widgets de tableau sont idéaux pour afficher une grande quantité de données dans un format structuré.
4.2.1. SQL via EDS
La connexion d'un widget de tableau à une base de données SQL est similaire à la connexion d'un widget de sélection. Vous définissez la source de données, choisissez la base de données et écrivez une requête pour récupérer les données. La configuration vous permet également de définir le tri et les limites.

Configuration d'un widget de tableau pour afficher des données à partir de l'EDS "Test Mysql".
4.2.2. Collections MongoDB
De même, vous pouvez remplir un widget de tableau à partir d'une collection MongoDB. L'interface utilisateur offre des options pour sélectionner la collection, définir le tri et limiter le nombre d'enregistrements par page.

Configuration d'un widget de tableau avec des données d'une collection MongoDB.
Les principaux champs de configuration pour un tableau basé sur une collection comprennent :
- Source de données : Sélectionnez Collection pour utiliser une collection MongoDB.
- Collection : Spécifiez la collection que vous souhaitez afficher.
- Trier par : Définissez l'ordre de tri. Dans l'exemple,
createdAt: -1trie les données pour afficher les éléments les plus récents en premier. - Requête : Le bouton Modifier ouvre l'éditeur de requêtes, vous permettant de filtrer les données affichées dans le tableau (par exemple, afficher uniquement les enregistrements avec un état 'actif').
- Limite : Ce champ définit le nombre d'enregistrements par page, activant la pagination.
4.3. Filtrage avancé
4.3.1. Filtres dynamiques (SQL)
Pour une sécurité et une personnalisation plus avancées, vous pouvez créer des requêtes SQL qui changent dynamiquement en fonction du rôle de l'utilisateur ou d'un autre contexte.

Une requête SQL dynamique utilisant un opérateur ternaire pour un filtrage basé sur les rôles.
Le code JavaScript dans l'éditeur construit une requête SQL dynamique :
- Il commence par une instruction
SELECTde base. - Il utilise ensuite un opérateur ternaire (
? :) pour vérifier si les rôles de l'utilisateur actuel (SF_connectedUser.roles) incluent un ID de rôle spécifique. - Si l'utilisateur a le rôle requis, une clause
WHEREsupplémentaire (and region = '"+code_region+"') est ajoutée à la requête, limitant les données qu'il peut voir. - Sinon, la requête reste plus simple.
C'est une technique puissante pour mettre en œuvre la sécurité des données et créer des applications contextuelles où les utilisateurs ne voient que les données qui les concernent.
4.3.2. Filtres de requête MongoDB
Le même filtrage dynamique peut être réalisé avec des requêtes MongoDB. L'éditeur de requêtes vous permet d'utiliser la syntaxe {{variable}} pour créer des filtres qui répondent aux entrées de l'utilisateur ou à l'état de l'application.

Une requête MongoDB dynamique utilisant la variable.
5. Utilisation dans les Actions
Au-delà du remplissage des widgets, les bases de données sont essentielles pour effectuer des opérations au sein de votre application. Les actions de l'interface web et le concepteur de processus de Softyflow vous permettent de créer des flux de travail puissants et automatisés pour la gestion des données.
5.1. Soumission de formulaire
Un cas d'utilisation principal des actions est la gestion des soumissions de formulaires, où les données saisies par l'utilisateur sont enregistrées dans une base de données.
5.1.1. SQL via EDS
L'action "Insérer dans EDS" vous permet d'enregistrer les données d'un formulaire dans une base de données SQL.

Utilisation de l'action "Insérer dans EDS" pour enregistrer les données d'un formulaire dans une table MySQL.
Lorsqu'un utilisateur soumet un formulaire, vous pouvez déclencher un flux de travail qui :
- Valide les données : S'assure que tous les champs obligatoires sont correctement remplis.
- Exécute l'action "Insérer dans EDS" : Cette action mappe les variables de votre formulaire (par exemple,
{{variable1}},{{variable2}}) aux colonnes correspondantes de votre table SQL (par exemple, dans la base de données "Test Mysql"). - Fournit un retour : Une fois les données enregistrées, vous pouvez afficher un message de confirmation à l'utilisateur ou le rediriger vers une autre page.
5.1.2. Collections MongoDB
De même, l'action "Enregistrer dans la collection" est utilisée pour enregistrer les données d'un formulaire dans une collection MongoDB.

Utilisation de l'action "Enregistrer dans la collection" pour insérer un document dans "demo_collection".
La configuration de cette action est simple :
- Sélectionnez la collection : Choisissez la collection cible, telle que
demo_collection. - Mappez les données : L'action mappe automatiquement le modèle de données de votre formulaire à un nouveau document dans la collection.
- Définissez les actions suivantes : Après l'enregistrement, vous pouvez ajouter d'autres actions, comme rafraîchir un widget de tableau pour afficher les données nouvellement ajoutées, offrant une expérience transparente à l'utilisateur.
5.2. Chargement et traitement des données
5.2.1. Agrégation MongoDB
Pour des besoins de récupération de données plus complexes, Softyflow propose l'action "Agréger la collection". Cela vous permet d'exécuter un pipeline d'agrégation MongoDB complet.

Configuration d'une action "Agréger la collection".
Cette action est incroyablement polyvalente et peut être utilisée pour :
- Effectuer des calculs sur plusieurs documents.
- Regrouper des données pour générer des résumés ou des rapports.
- Filtrer et remodeler les données avant qu'elles ne soient affichées dans un widget ou transmises à une autre action.
Le résultat de l'agrégation peut être stocké dans une variable pour une utilisation ultérieure.
5.3. Opérations de mise à jour
La mise à jour des données existantes est une autre opération de base de données fondamentale gérée par des actions.
5.3.1. Mise à jour en SQL
L'action "Mettre à jour dans EDS" est l'équivalent d'une instruction SQL UPDATE. Elle est utilisée pour modifier un ou plusieurs enregistrements existants dans votre base de données SQL.

Configuration d'une action "Mettre à jour dans EDS" pour modifier des enregistrements.
Vous utilisez généralement cette action après qu'un utilisateur a modifié un formulaire. Vous spécifiez la clause WHERE pour identifier le(s) enregistrement(s) à mettre à jour et mappez les nouvelles valeurs de vos variables de formulaire aux colonnes de la table.
5.3.2. Mise à jour MongoDB
Pour MongoDB, l'action "Mettre à jour dans la collection" vous permet de modifier un seul document.

Configuration d'une action "Mettre à jour dans la collection".
Pour utiliser cette action, vous fournissez l'ID du document que vous souhaitez mettre à jour et les nouvelles données que vous souhaitez définir. C'est essentiel pour enregistrer les modifications apportées à un enregistrement existant qu'un utilisateur a modifié dans un formulaire d'édition.
6. Remplissage de formulaires avec des données de base de données
Une exigence courante pour les formulaires est de les pré-remplir avec des données existantes d'une base de données, en particulier pour la modification d'enregistrements. Softyflow propose des actions dédiées à cet effet.
6.1. Remplissage depuis SQL via EDS
L'action "Trouver plusieurs dans EDS" est un outil polyvalent pour récupérer plusieurs enregistrements d'une base de données SQL en fonction de critères spécifiques.

Utilisation de "Trouver plusieurs dans EDS" pour rechercher des enregistrements.
Bien que cette action soit parfaite pour remplir des tableaux, elle peut également être utilisée pour trouver un enregistrement spécifique (ou un ensemble d'enregistrements) pour remplir un formulaire. Par exemple, vous pouvez l'utiliser pour trouver toutes les personnes de contact associées à un client particulier et les afficher dans une liste. Les résultats de l'action sont stockés dans une variable, que vous pouvez ensuite utiliser pour remplir les champs de votre formulaire.
6.2. Remplissage depuis une collection MongoDB
L'action "Obtenir un document" est spécifiquement conçue pour récupérer un seul document d'une collection MongoDB par son ID et remplir un formulaire avec ses données.

Utilisation de "Obtenir un document" pour remplir un formulaire avec des données d'un document MongoDB.
Cette action est fondamentale pour la création de formulaires "d'édition". Le flux de travail typique est le suivant :
- Un utilisateur sélectionne un élément dans une liste ou un tableau.
- L'ID de l'élément sélectionné est transmis à l'action "Obtenir un document".
- L'action récupère le document complet de la collection MongoDB.
- Les champs du document sont automatiquement mappés aux champs correspondants du modèle de données de votre formulaire, pré-remplissant le formulaire pour que l'utilisateur puisse le modifier.
7. Meilleures pratiques
Le choix de la bonne technologie de base de données est essentiel au succès de votre projet. Voici quelques directives pour vous aider à choisir entre SQL EDS et les collections MongoDB.
7.1. Quand utiliser SQL via EDS
Les bases de données SQL sont le bon choix lorsque votre projet implique des données structurées et nécessite des fonctionnalités robustes de niveau entreprise.
✅ À utiliser pour :
- Systèmes d'entreprise existants : Intégration avec des systèmes établis tels que les ERP, les CRM ou d'autres bases de données héritées.
- Rapports et analyses complexes : Lorsque vous avez besoin d'effectuer des requêtes complexes, des jointures et des agrégations pour l'informatique décisionnelle.
- Grands ensembles de données relationnelles : Pour les applications qui gèrent de grands volumes de données avec des relations claires et prédéfinies.
- Cohérence et intégrité des données : Lorsque la cohérence stricte des données et la conformité ACID ne sont pas négociables.
- Conformité réglementaire : Pour les projets qui doivent respecter des normes strictes de gouvernance des données et de réglementation.
7.2. Quand utiliser les collections MongoDB
Les collections MongoDB offrent rapidité et flexibilité, ce qui les rend idéales pour un développement agile et moderne.
✅ À utiliser pour :
- Développement rapide d'applications : Créez et itérez rapidement sur des prototypes et des MVP sans être ralenti par les migrations de schéma.
- Données flexibles et évolutives : Pour les applications où le modèle de données est susceptible de changer ou où les documents ont des structures variables.
- Données spécifiques à l'application : Stockage de configurations, de préférences utilisateur ou d'autres données étroitement liées à la logique de l'application.
- Données temporaires ou de cache : Gestion des données de session, des journaux ou du contenu mis en cache qui est de nature transitoire.
- Gestion de contenu : Gestion de contenu non structuré ou semi-structuré comme des articles, des catalogues de produits ou du contenu généré par les utilisateurs.
8. Considérations de sécurité
La sécurité des bases de données est primordiale. Voici les principales pratiques de sécurité pour les bases de données SQL et MongoDB dans Softyflow.
8.1. Sécurité SQL
- Prévenir l'injection SQL : Utilisez toujours des requêtes paramétrées ou des instructions préparées, en particulier lorsque vous incorporez des entrées utilisateur dans vos requêtes. Les fonctionnalités de requête dynamique de Softyflow (
{{variable}}) aident à atténuer ce risque. - Appliquer le principe du moindre privilège : Utilisez le contrôle d'accès basé sur les rôles (RBAC) dans votre base de données pour vous assurer que les utilisateurs de l'application ne peuvent accéder qu'aux données qu'ils sont autorisés à voir.
- Chiffrer les données sensibles : Protégez les données sensibles à la fois en transit (en utilisant SSL/TLS pour la connexion) et au repos (en utilisant le chiffrement au niveau de la base de données).
- Effectuer des audits réguliers : Examinez régulièrement les journaux de la base de données et les autorisations des utilisateurs pour détecter et corriger les vulnérabilités de sécurité potentielles.
8.2. Sécurité MongoDB
- Validation du schéma et des entrées : Même si MongoDB est sans schéma, votre application doit appliquer une couche de validation de données stricte pour empêcher l'enregistrement de données malformées ou malveillantes.
- Utiliser les autorisations au niveau du champ : Configurez des rôles qui n'ont l'autorisation d'accéder qu'aux champs spécifiques dont ils ont besoin, plutôt qu'au document entier.
- Mettre en œuvre la désinfection des données : Désinfectez toute entrée fournie par l'utilisateur qui est utilisée dans les requêtes pour prévenir les attaques par injection NoSQL.
- Établir des plans de sauvegarde et de récupération : Sauvegardez régulièrement vos collections et testez vos procédures de récupération pour éviter la perte de données en cas d'incident.
9. Migration entre systèmes
Les flux de travail basés sur les actions de Softyflow permettent d'automatiser la migration de données entre différents systèmes de bases de données.
9.1. De MongoDB à SQL
Vous pouvez créer un processus Softyflow pour lire des données d'une collection MongoDB et les écrire dans une base de données SQL. C'est utile pour déplacer des données d'un environnement de prototypage flexible à une base de données de production structurée.
L'image ci-dessous montre une séquence d'actions qui automatise cette migration :

Un processus Softyflow pour la migration de données de MongoDB vers une base de données SQL.
Ce processus se compose de trois étapes principales :
- Obtenir la collection : L'action
getCollectionrécupère tous les documents de lademo_collectiondans MongoDB. - Définir la variable : Les données sont stockées dans une variable, telle que
exportedData. Dans un scénario réel, vous pourriez ajouter un script ici pour transformer les données afin qu'elles correspondent au schéma SQL. - Insérer dans EDS : L'action
insert in EDSparcourt lesexportedDataet insère chaque enregistrement dans la tablecustomersde la base de données "Test Mysql", en mappant les champs selon les besoins.
Ce type de flux de travail automatisé est un exemple puissant de la manière dont Softyflow peut orchestrer des opérations de données complexes entre des systèmes disparates.
Cette documentation fournit des exemples pratiques pour l'utilisation de SQL et de MongoDB dans les applications Softyflow. Choisissez la méthode de stockage de données appropriée en fonction de vos besoins spécifiques et de votre infrastructure existante.
Prochaines étapes
Maintenant que vous comprenez l'intégration de bases de données, continuez à construire votre application :
- Conception d'interface web - Créez des interfaces qui affichent et interagissent avec vos données
- Conception de processus - Concevez des processus qui utilisent les données de votre base de données
- Intégration - Connectez-vous à des sources de données externes et à des API
- Rapports - Créez des rapports à partir des données de votre base de données
- Test et déploiement - Testez vos intégrations de bases de données dans différents environnements
- Surveillance et exécution - Surveillez vos processus basés sur les données
Pour une expérience pratique, essayez nos tutoriels pas à pas ou regardez nos tutoriels vidéo sur les bases de données.
Pour des fonctionnalités de base de données avancées, explorez notre documentation EDS, l'intégration MongoDB et apprenez à utiliser les bases de données dans les widgets de sélection et les widgets de tableau.