Salut à toutes et à tous,

Voilà j'ai réalisé une application en lien avec une BDD MySql. Dans mon application il y a une form "Sauve_DB_MySQL.cs" qui me permet de sauvegarder ou de restauré ma BDD en cas de pépin sur cette dernière sur un simple click bouton.

Les deux actions (sauvegarde et restaure) fonctionnent très bien. Le seul petit HIC c'est que lorsque je clique sur le bouton sauvegarde il m'exporte bien toute les tables de la BDD (au format sql) mais sans la vue (oui j'ai une vue dans ma BDD).

Ma question : Comment exporter ma BDD en incluant les vues ?


Voilà mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
 
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
 
namespace Gestion_des_produits
{
    public partial class Sauve_DB_MySQL : Form
    {
        //Déclaaration des variables.
        DialogResult resultat;
 
        //********************//
        //*** CONSTRUCTEUR ***//
        //********************//
        public Sauve_DB_MySQL()
        {
            InitializeComponent();
        }
 
        //*************************************************************//
        //*** ÉVÉNEMENT CLICK - sur clique du bouton "btn_save_BDD" ***//
        //*************************************************************//
        private void btn_save_BDD_Click(object sender, EventArgs e)
        {
            //MessageBox YesNo - Confirme la demande d'action. 
            resultat = MessageBox.Show("Attention, vous allez sauvegarder votre base de donnée MySql. Voulez-vous confirmer ce choix ?", "Demande de confirmation sauvegarde", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button2);
 
            //Vérification YesNo - Vérifie si l'utilisateur à confirmé son action.
            if (resultat == DialogResult.Yes)
            {
                try
                {
                    //Déclaration de la variable (constr) et affectation de la valeur de connection au serveur MySql.
                    string constr = Properties.Settings.Default.MyConnectionProduit;
 
                    //Déclaration de la variable (file) et affectation de la valeur du chemin d'enregistrement du fichier.
                    string file = "C:\\Users\\" + Environment.UserName + "\\Desktop\\Base_de_donnee_m_ayoube_be.sql";
 
                    //Création de l'objet (mb) de type MySqlBackup avec pour paramètre la connection au serveur MySql.
                    MySqlBackup mb = new MySqlBackup(constr);
 
                    //Exportation de la base de donnée vers le chemin spécifié.
                    mb.ExportInfo.FileName = file;
                    mb.Export();
 
                    //MessageBox - Affiche sauvegarde avec succes.
                    MessageBox.Show("La sauvegarde de la base de donnée à bien était effectué.");
                }
                catch
                {
                    //MessageBox - Affiche erreur.
                    MessageBox.Show("Une erreur est survenu lors de la sauvegarde de la base de donnée.");
                }
            }
            //Vérification YesNo - FIN
        }
 
        //*************************************************************//
        //*** ÉVÉNEMENT CLICK - sur clique du bouton "btn_restaure_BDD" ***//
        //*************************************************************//
        private void btn_restaure_BDD_Click(object sender, EventArgs e)
        {
            //MessageBox YesNo - Confirme la demande d'action. 
            resultat = MessageBox.Show("Attention, vous allez restaurer votre base de donnée MySql. Voulez-vous confirmer ce choix ?", "Demande de confirmation restauration", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button2);
 
            //Vérification YesNo - Vérifie si l'utilisateur à confirmé son action.
            if (resultat == DialogResult.Yes)
            {
                //Création de l'objet (obj_img_file) de type (OpenFileDialog).
                OpenFileDialog obj_BDD_file = new OpenFileDialog();
 
                //Filtrer les extentions images autorisé.
                obj_BDD_file.Filter = "Image file|*.sql";
 
                //Chemin par défaut lors de l'ouverture de la box pour selectionner une image. 
                obj_BDD_file.InitialDirectory = "Desktop";
 
                //Titre de la box pour selectionner une image.
                obj_BDD_file.Title = "Selectionnez votre fichier : Base_de_donnee_m_ayoube_be.sql !";
 
                //Vérification ShowDialog - Si selection fichier.
                if (obj_BDD_file.ShowDialog() == DialogResult.OK)
                {
                    try
                    {
                        //Déclaration de la variable (constr) et affectation de la valeur de connection au serveur MySql.
                        string constr = Properties.Settings.Default.MyConnectionProduit;
 
                        //Déclaration de la variable (file) et affectation de la valeur du chemin d'enregistrement du fichier.
                        string file = obj_BDD_file.FileName;
 
                        //Création de l'objet (mb) de type MySqlBackup avec pour paramètre la connection au serveur MySql.
                        MySqlBackup mb = new MySqlBackup(constr);
 
                        //Exportation de la base de donnée vers le chemin spécifié.
                        mb.ImportInfo.FileName = file;
                        mb.Import();
 
                        //MessageBox - Affiche sauvegarde avec succes.
                        MessageBox.Show("La restauration de la base de donnée à bien était effectué.");
                    }
                    catch
                    {
                        //MessageBox - Affiche erreur.
                        MessageBox.Show("Une erreur est survenu lors de l'importation de la base de donnée.");
                    }  
                }
 
            }
            //Vérification YesNo - FIN
        }
 
        //*************************************************//
        //*** ÉVÉNEMENT CLICK - sur le bouton "Retour" ***//
        //*************************************************//
        private void btn_retour_Click(object sender, EventArgs e)
        {
            //Création d'un obet (form_action) de type (Action).
            Action form_action = new Action(null);
 
            //Fermeture de ce form.
            this.Close();
 
            //Ouverture de form (Action).
            form_action.Show();
        }
 
        //*************************************************//
        //*** ÉVÉNEMENT CLICK - sur le bouton "Quitter" ***//
        //*************************************************//
        private void btn_quitter_Click(object sender, EventArgs e)
        {
            //Quitter l'application.
            Application.Exit();
        }
    }
}

Voilà en espérant que vous puissiez m'aider ou me guider