Как загрузить базу данных на сервер XAMPP? - PullRequest
0 голосов
/ 22 декабря 2018

Я использую приведенный ниже сценарий для автоматической загрузки базы данных на сервер XAMPP при установке exe-файла, но, к сожалению, этого не происходит. Я помещаю файл ".SQL" в ту же папку, где мой exe-файл находится вручнуюи я использую метод click Once, чтобы создать exe-файл. Пожалуйста, проверьте приведенный ниже код и направьте меня соответственно, где я ошибаюсь

 public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        public  void MainWindow_load(object sender,EventArgs e)
        {
            if (!checkifdbexist())
            {
                generatedatabase();
            }
        }
        private bool checkifdbexist()
        {
            String conn = "datasource=127.0.0.1;port=3306;username=root;password=;database=demon;";
            MySqlConnection con = new MySqlConnection(conn);
            try
            {
                con.Open();
                return true;
            }
            catch
            {
                return false;

            }



        }

        private void generatedatabase()
        {
            List<string> cmds = new List<string>();
            if (File.Exists(System.Windows.Forms.Application.StartupPath + "\\demo.sql"))
            {
                TextReader tr = new StreamReader(System.Windows.Forms.Application.StartupPath + "\\demo.sql");
                String line = "";
                string cmd = "";
                while ((line = tr.ReadLine()) != null)
                {
                    if (line.Trim().ToUpper() == "GO")
                    {

                        cmds.Add(cmd);
                        cmd = "";
                    }
                    else
                    {
                        cmd += line + "\r\n";


                    }
                }
                if (cmd.Length > 0)
                {
                    cmds.Add(cmd);
                    cmd = "";

                }
                tr.Close();

            }
            if (cmds.Count > 0)
            {
                MySqlCommand comm = new MySqlCommand();
                comm.Connection = new MySqlConnection("datasource=127.0.0.1;port=3306;username=root;password=;Initial Catalog=MASTER;");
                comm.CommandType = System.Data.CommandType.Text;
                comm.Connection.Open();
                for (int i = 0; i < cmds.Count; i++)
                {
                    comm.CommandText = cmds[i];
                    comm.ExecuteNonQuery();

                }
            }




        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...