c# 连接mysql(待完善)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_39942341/article/details/84889218

 如果远程连接

考虑执行下面的语句,如果已经有root用户,第一句忽略

CREATE USER 'root'@'%' IDENTIFIED BY 'root';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

连接需要MySql.Data

vs下 工具-->NuGet 包管理 -->管理 解决方案的NuGet程序包

浏览-->搜索Mysql

就能找到

下面是个帮助连接mysql和增删改查的类

class MySqlHelper
    {
        private MySqlConnection myConnection = null;
        private DataTable dataTable;
        /*连接数据库
         * @param ip 数据库的IP地址
         * @param user 用户名
         * @param password 密码
         * @param database 数据库
         */
        public MySqlHelper(string ip,string user,string password,string database)
        {
            myConnection = new MySqlConnection(
                string.Format("server={0};user id={1};password={2};database={3}", ip, user, password, database));
            myConnection.Open();
        }
        /*
         * 执行查询语句,
         * 返回查询到的行数,错误返回-1
         */
        public int Query(string sql)
        {
            try
            {
                MySqlDataAdapter adapter = new MySqlDataAdapter(sql, myConnection);
                dataTable = new DataTable();
                adapter.Fill(dataTable);
                foreach (DataRow dr in dataTable.Rows)
                {
                    foreach (DataColumn dc in dr.Table.Columns)
                    {
                        Console.Write(dr[dc] + " ");
                    }
                    Console.WriteLine();
                }
                return dataTable.Rows.Count;
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                return -1;
            }
        }
        /*
         * 执行语句(insert,update,delete,drop,truncate,use,create)
         * 返回影响到的行数
         * 错误返回-1
         * drop,truncate,use成功返回0
         * create database成功返回1
         */
        public int Exec(string sql)
        {
            try
            {
                MySqlCommand command = new MySqlCommand(sql, myConnection);
                int rows = command.ExecuteNonQuery();
                return rows;
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                return -1;
            }
        }
        /*
         * 关闭连接
         */
        ~MySqlHelper()
        {
            myConnection.Close();
        }
    }

猜你喜欢

转载自blog.csdn.net/qq_39942341/article/details/84889218