vs2012 连接云服务器mysql

网上的帖子一大堆,看的头疼,然而还是解决不了问题

这里首先要实现功能,有一个前提,vs的版本,mysql.data.dll的版本,mysql的版本必须一致才可以

我mysql版本用的5.5.62,mysql.data.dll版本是5.1.0.0,vs版本是2012,

首先遇到的问题是

1.云服务器数据库不能外连

这个问题在云服务器控制台可以解决,

点击云服务器BBC,安全组

创建实例,添加规则,直接点击mysql即可,名字随意起。

然后在mysql上创建一个低权限的用户,详见我的博客 。然后就可以在本地连接了。

扫描二维码关注公众号,回复: 4971173 查看本文章

vs添加mysql.data.dll

在项目名上右键添加引用

点击浏览,找到你的mysql.data.dll,选中即可。

下载

mysql.data5.1.0.0

连接代码

使用c#连接mysql时,除了引用mysql.data还需要代码头上加上using MySql.Data.MySqlClient;

代码

 private void button1_Click(object sender, EventArgs e)
        {
            String connStr = "server=106.12.158.67;user=root;password=root; database=test;";
                MySqlConnection conn = new MySqlConnection(connStr);
            conn.Open();
            MessageBox.Show("打开数据库连接成功");
            conn.Close();
            MessageBox.Show("关闭数据库连接成功");
        }

        private void button2_Click(object sender, EventArgs e)
        {
            String connStr = "server=106.12.158.67;user=root;password=root; database=test;";
            MySqlConnection conn = new MySqlConnection(connStr);
            string sql = "select count(*) from customers;";
            conn.Open();
            MySqlCommand command = new MySqlCommand(sql, conn);
            try
            {

                object num1=command.ExecuteScalar();
                int num = Convert.ToInt32(num1);
                string message = String.Format("共有学生{0}人", num);
                MessageBox.Show(message, "查询结果", MessageBoxButtons.AbortRetryIgnore, MessageBoxIcon.Information);
                conn.Close();
            }
            catch (MySqlException ex)
            {
                MessageBox.Show("Error connecting to the server: " + ex.Message);

            }
        }

        private void button3_Click(object sender, EventArgs e)
        {
            listBox1.Items.Clear();
            String connStr = "server=106.12.158.67;user=root;password=root; database=test;";
            MySqlConnection conn = new MySqlConnection(connStr);
            string sql = "select firstname from customers;";
            MySqlCommand command = new MySqlCommand(sql, conn);
            conn.Open();
            MySqlDataReader dateReader = command.ExecuteReader();
            while (dateReader.Read())
            {
                string firstname = dateReader["firstname"].ToString();
                listBox1.Items.Add(firstname);
            }
            dateReader.Close();
        }

效果

猜你喜欢

转载自blog.csdn.net/qq_40657585/article/details/84593984