7
votes

Dumping Data des vues dans MySQL

J'ai une vue et souhaitez extraire ses données dans un fichier qui crée une instruction Table comme des données bien. Je sais que MySqldump ne fonctionne pas sur les points de vue.


0 commentaires

3 Réponses :


2
votes

Utilisez Sélectionnez ... dans Outfile pour créer un Dump des données.


2 commentaires

Vous pourriez avoir une chose d'utiliser ̶d̶u̶m̶p̶f̶i̶l̶e̶ - Ne pas - Il suffit d'une tâche assez spéciale de sortie 1 rangée seulement ... plus dans des documents spéciaux pour sélectionner dans: dev.mysql.com/doc/refman/5.7/fr/Select-into.html


Pour charger les données, vous aurez besoin charger des données infilières ... Docs: dev.mysql.com/doc/refman/5.7/fr/load-Data.html



12
votes

Évidemment, il n'y a pas de moyen automatisé de générer le tableau code> tableau code> d'une table qui n'existe pas. Donc, vous avez essentiellement deux options:

  1. Créez une table réelle, videz-la et retirez-la par la suite. LI>
  2. Écrivez beaucoup de code pour analyser les tables de vue et sous-jacentes et générer le SQL approprié. Li> ol>

    première option n'est pas optimal, mais il est facile à mettre en œuvre: p> xxx pré>

    Vous pouvez maintenant vider la table avec mysqldump code> . Lorsque vous avez terminé: P>

    DROP TABLE my_table;
    


0 commentaires

0
votes

J'ai écrit une fonction Bash pour exporter la "structure" et les données d'une vue sans créer une copie complète des données. Je l'ai testé avec MySQL 5.6 sur un serveur Centos 7. Il prend correctement en compte des colonnes avec des valeurs JSON et des chaînes telles que "O'Mally", même si vous devriez peut-être modifier davantage les autres cas spéciaux.

Pour le bien de la brièveté, je ne l'ai pas rendu robuste en termes d'erreur chèques ou quoi que ce soit d'autre. xxx


0 commentaires