mysql封装_MySQL简单封装

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using MySql.Data.MySqlClient;

using System.Xml;

using Row = System.Collections.Generic.Dictionary;

namespace NeowayFixPlatform

{

class MysqlFunction

{

public static string table_fix = "nw_fix_record";

public bool IsConnected()

{

return (mysql.State == ConnectionState.Open);

}

public MysqlFunction()

{

if (mysql.State != ConnectionState.Open)

mysql.Open();

}

~MysqlFunction()

{

if (mysql.State == ConnectionState.Open)

mysql.Dispose();

}

private static String mysqlcon = GetConfigString();

MySqlConnection mysql = new MySqlConnection(mysqlcon);

public string quote(ref string value)

{

value = value.Replace(@"\", @"\\").Replace("'", @"\'");

return value;

}

public StringBuilder quote(ref StringBuilder value)

{

value = value.Replace(@"\", @"\\").Replace("'", @"\'");

return value;

}

public StringBuilder GetPairSQLString(Row row)

{

StringBuilder strSQL = new StringBuilder();

foreach (KeyValuePair pair in row)

{

string value = pair.Value.ToString();

this.quote(ref value);

strSQL.AppendFormat("{0}='{1}',", pair.Key, value);

}

strSQL.Remove(strSQL.Length-1, 1);

return strSQL;

}

public bool UpdateOne(string table,Row row,string format,params object[] args)

{

StringBuilder condition = new StringBuilder();

condition.AppendFormat(format, args);

return this.UpdateOne(table, row, condition.ToString());

}

public bool UpdateOne(string strTable, Row row, string strQuery)

{

StringBuilder strSQL = new StringBuilder();

try

{

strSQL.AppendFormat("UPDATE {0} set {1} WHERE {2} LIMIT 1", strTable, GetPairSQLString(row), strQuery);

//mysql.Open();                MySqlCommand cmd = new MySqlCommand(strSQL.ToString(), mysql);

cmd.ExecuteNonQuery();

cmd.Dispose();

return true;

}

catch (System.Exception ex)

{

MessageBox.Show(ex.Message);

}

return false;

}

public Row FetchOne(string strSQL)

{

Row row = new Row();

try

{

//mysql.Open();                MySqlCommand cmd = new MySqlCommand(strSQL.ToString(),mysql);

MySqlDataReader reader = cmd.ExecuteReader();

reader.Read();

for (int i = 0; i 

{

if (reader.HasRows)

row[reader.GetName(i)] = reader[i].ToString();

}

reader.Close();

cmd.Dispose();

}

catch (System.Exception ex)

{

MessageBox.Show(ex.Message);

}

return row;

}

#region 获取登陆字符

//获取登陆字符//        public static string GetConfigString()

{

string spath = Application.StartupPath;

spath += "\\config.xml";

XmlDocument xml = new XmlDocument();

xml.Load(spath);

XmlNode config = xml.SelectSingleNode("config");

XmlNode dbname = config.SelectSingleNode("dbname");

XmlNode ipaddr = config.SelectSingleNode("ipaddr");

XmlNode username = config.SelectSingleNode("username");

XmlNode password = config.SelectSingleNode("password");

return string.Format("database={0};Password={1};User ID={2};server={3}", dbname.InnerText, password.InnerText, username.InnerText, ipaddr.InnerText);

}

#endregion

public bool BindData(string sql,ref DataGridView dgv)

{

DataSet dataset = new DataSet();

DataTable datatable = new DataTable();

try

{

MySqlDataAdapter mdap = new MySqlDataAdapter(sql, mysql);

mdap.Fill(dataset);

datatable = dataset.Tables[0];

dgv.DataSource = datatable;

return true;

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

}

return false;

}

#region 用户登录

//系统登录//        public bool Login(cUserInfo userinfo)

{

DataSet dataset = new DataSet();

DataTable datatable = new DataTable();

try

{

//MySqlDataAdapter 数据库执行函数,查询,插入,删除都可使用               MySqlDataAdapter mdap = new MySqlDataAdapter("select * from nw_user where user_name = '" + userinfo.User_name + "' and user_pwd = '" + userinfo.User_password + "'", mysql);

mdap.Fill(dataset);

datatable = dataset.Tables[0];

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

}

if (datatable.Rows.Count == 1)

{

DataRow datarow = datatable.Rows[0];

userinfo.User_power = datarow["user_power"].ToString();

return true;

}

return false;

}

#endregion

public bool SaveFix(Dictionary row,bool bNew)

{

StringBuilder strSQL = new StringBuilder();

try

{

if (bNew)

strSQL.Append("INSERT INTO nw_fix_record set ");

else

strSQL.Append("UPDATE nw_fix_record set ");

strSQL.AppendFormat("{0}",GetPairSQLString(row));

if (!bNew)

{

strSQL.AppendFormat(" WHERE IMEI_MEID='{0}' limit 1", row["IMEI_MEID"]);

}

//mysql.Open();

MySqlCommand cmd = new MySqlCommand(strSQL.ToString(), mysql);

cmd.ExecuteNonQuery();

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

return false;

}

return true;

}

#region 获取所有产品型号

//获取所有产品型号//        public string[] GetProducts()

{

DataSet dataset = new DataSet();

DataTable datatable = new DataTable();

string[] rows = null;

try

{

MySqlDataAdapter mdap = new MySqlDataAdapter("select * from nw_product where 1", mysql);

mdap.Fill(dataset);

datatable = dataset.Tables[0];

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

return rows;

}

int row_count = datatable.Rows.Count;

if (row_count>0)

{

rows = new string[row_count];

for (int i = 0; i 

{

rows[i] = datatable.Rows[i][0].ToString();

}

}

return rows;

}

#endregion

#region 获取所有客户名称

//获取所有客户名称//        public string[] GetAllClientName()

{

DataSet dataset = new DataSet();

DataTable datatable = new DataTable();

string[] rows = null;

try

{

MySqlDataAdapter mdap = new MySqlDataAdapter("select client_name from nw_client where 1", mysql);

mdap.Fill(dataset);

datatable = dataset.Tables[0];

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

return rows;

}

int row_count = datatable.Rows.Count;

if (row_count > 0)

{

rows = new string[row_count];

for (int i = 0; i 

{

rows[i] = datatable.Rows[i][0].ToString();

}

}

return rows;

}

#endregion

#region 获取所有维修人员

//获取所有维修人员//        public string[] GetAllRepairEr()

{

DataSet dataset = new DataSet();

DataTable datatable = new DataTable();

string[] rows = null;

try

{

MySqlDataAdapter mdap = new MySqlDataAdapter("select user_name from nw_user where user_power='维修员' order by user_id", mysql);

mdap.Fill(dataset);

datatable = dataset.Tables[0];

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

return rows;

}

int row_count = datatable.Rows.Count;

if (row_count > 0)

{

rows = new string[row_count];

for (int i = 0; i 

{

rows[i] = datatable.Rows[i][0].ToString();

}

}

return rows;

}

}

#endregion

#region 定义用户表

public class cUserInfo

{

private int user_id;

public int User_id

{

get { return user_id; }

set { user_id = value; }

}

private string user_name;

public string User_name

{

get { return user_name; }

set { user_name = value; }

}

private string user_password;

public string User_password

{

get { return user_password; }

set { user_password = value; }

}

private string user_power;

public string User_power

{

get { return user_power; }

set { user_power = value; }

}

}

#endregion

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值