Patcher en bloc une table mySql par un fichier CSV

  • Patcher en bloc une table mySql par un fichier CSV

    Posté par Sylvain sur 28 août 2024 à 17h35

    Bonjour,

    J’ai un petit sujet sur lequel je planche depuis quelques temps et je suis en train d’évaluer plusieurs scénarios et j’aimerai vous en faire part voir ce que vous en pensez ou bien si vous aviez des pistes à me conseiller.

    Ma problématique initiale c’est :
    -> j’ai une table dans une base mySql, avec une PowerApps qui permet d’agir ligne à ligne sur la table, ça fonctionne bien.
    -> je souhaite pouvoir “patcher” un fichier CSV dans ma table mySql, jusqu’à 75 000 lignes, ou bien jusqu’à 5000 lignes si 75 000 impossible, ceci de manière la plus automatique possible pour le métier.
    -> passer par PowerApps ne me semble pas pertinent dans le sens où patcher plus de 30 lignes une à une me semble déjà ambitieux 🙂

    Du coup je réfléchis, je me dit que je peux utiliser Power Automate pour “requêter” la table mySql mais il semblerait que cela soit impossible (pas de connecteur en ce sens)

    Je suis en train de voir si cette opération de requêtage d’un gros paquet de ligne via Power Automate est possible sur une table AZURE SQL SERVER ou bien Dataverse, ou autre ?

    Si vous aviez des pistes de recherche je suis preneur 🙂

    Bien cordialement

    Sylvain CHARLETY pour DIGITALWAKEN – Transformation digitale Power Platform

    Sylvain a répondu Il y a 2 mois, 3 semaines 2 Membres · 2 Réponses
  • 2 Réponses
  • ypicot

    Membre
    31 août 2024 à 14h10

    Bonjour

    Une idée à chaud, sans avoir testé : créer un script PowerShell lancé par Power Automate. Ce script exécutera une ligne de commande de mysql qui importera les données (qque chose type “mysql –user=monuser –password=monpw dbname < file.sql”)

    Cela te permet d’importer au format SQL ou au format CSV (LOAD DATE INFILE, si ta config le permet).

    Inconvénient de taille : tu es obligé d’indiquer le mot de passe du compte mysql dans le script 🙁
    Même si tu créés un compte qui ne sert qu’à cela (merci le GRANT), cela fait un trou dans la sécurité.

    Yvan

    • Cette réponse a été modifiée Il y a 2 mois, 3 semaines par  ypicot.
  • Sylvain

    Membre
    2 septembre 2024 à 8h29

    Bonjour Yvan,

    Merci beaucoup pour ta réponse, le fait d’utiliser des scripts enclenchés en automatique et impactant la db mySql sont en effet les pistes vers lesquelles je me tourne aujourd’hui.

    Dans les semaines qui arrivent je vais plancher sur les axes suivants :
    -> tester le patchage de la table mySql via Power Automate ou bien Power Automate desktop :
    -> avec un script en Python ou php ou PowerShell

    -> si ça ne marche pas voir ce qu’il est possible de faire dans le style avec une BDD plus Microsoft friendly genre AZURE SQL SERVER ou bien DATAVERSE

    -> le sujet des mots de passe dans le script j’y avait pas pensé et en effet c’est un point majeur à traiter merci beaucoup pour cette indication 🙂

    Je vous tiens au jus sur mon avancement sur le sujet 🙂

Connectez-vous pour répondre.