.net连接Mysql封装类代码 可直接调用

2017-06-17 20:34:15 .net
下面是我封装好的连接Mysql数据库的类,直接调用即可。
微软的visual studio没有自带连接Mysql的驱动,要去网上下载一个mysql-connector-net-6.4.3驱动,然后安装就可以使用。
下面是我封装好的连接数据库的类,直接调用即可。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using MySql.Data.MySqlClient;
namespace DAL
{
  public class GetConnection
    {
        private static MySqlConnection  _connection;
      /// <summary>
      /// 获取数据库连接桥
      /// </summary>
        private static MySqlConnection Connection
        {
            get
            {
               //string connectionString = ConfigurationManager.AppSettings["ConnectionString"];
                string connectionString = "server=localhost;user id=root; password=root; database=system; pooling=false";
                //server=222.222.222.222;port=3306;uid=user;pwd=;database=basename;远程连接的
                //string connectionString = "Data Source=202.192.72.22;Initial Catalog=wwj;Persist Security Info=True;User ID=wwj;Password=wwj123";
                if (_connection == null)
                {
                    _connection = new MySqlConnection(connectionString);
                    _connection.Open();
                }
                if (_connection.State == ConnectionState.Closed)
                {
                    _connection.Open();
                }
                if (_connection.State == ConnectionState.Broken)
                {
                    _connection.Close();
                    _connection.Open();
                }
                return GetConnection._connection;
            }
        }
      /// <summary>
      /// 获取表数据
      /// </summary>
      /// <param name="sql"></param>
      /// <returns></returns>
        public static MySqlDataReader GetDataRead(string sql)
        {
            MySqlCommand command = new MySqlCommand(sql, Connection);
            MySqlDataReader read = command.ExecuteReader();
            return read;
        }
        public static int NoSelect(string sql)
        {
            MySqlCommand command = new MySqlCommand(sql, Connection);
            int row = command.ExecuteNonQuery();
            return row;
        }
        public static DataTable GetDataTable(string sql)
        {
            MySqlCommand command = new MySqlCommand(sql, Connection);
            DataTable dt = new DataTable();
            MySqlDataAdapter sda = new MySqlDataAdapter(command);
            sda.Fill(dt);
            return dt;
        }
        /// <summary>
        /// 执行sql语句,返回一行一列。。
        /// </summary>
        /// <param name="sql">SQL语句</param>
        /// <returns></returns>
        public static string GetScalar(string sql)
        {
            MySqlCommand command = new MySqlCommand(sql, Connection);
            return command.ExecuteScalar().ToString();
        }
    }
}

比如说你想执行删除的,你可以调用GetConnection.NoSelect("delete from UserInfo where Id=1");读数据库的某一张表,可以调用GetConnection.GetDataTable("select * from UserInfo");调用都很方便。