关键词搜索

源码搜索 ×
×

c#操作mysql

发布2020-12-23浏览1831次

详情内容

C#操作mysql需要添加相应版本的MySql.Data.dll引用

MysqlBase.cs

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using MySql.Data.MySqlClient;
  6. using System.Data;
  7. namespace 一键配置工具
  8. {
  9. class MysqlBase
  10. {
  11. private MySqlConnection conn = null;
  12. private MySqlCommand command = null;
  13. private MySqlDataReader reader = null;
  14. /// <summary>
  15. /// 构造方法里建议连接
  16. /// </summary>
  17. /// <param name="connstr"></param>
  18. public MysqlBase(string connstr)
  19. {
  20. //我这里是在构造函数里传入mysql连接语句
  21. conn = new MySqlConnection(connstr);
  22. }
  23. /// <summary>
  24. /// 发送指令
  25. /// </summary>
  26. /// <param name="sql"></param>
  27. public void CreateCommand(string sql)
  28. {
  29. conn.Open();
  30. command = new MySqlCommand(sql, conn);
  31. }
  32. /// <summary>
  33. /// 增、删、改公共方法
  34. /// </summary>
  35. /// <returns></returns>
  36. public int commonExecute()
  37. {
  38. int res = -1;
  39. try
  40. {
  41. res = command.ExecuteNonQuery();
  42. }catch(MySqlException ex)
  43. {
  44. Console.WriteLine("操作失败!" + ex.Message);
  45. }
  46. conn.Close();
  47. return res;
  48. }
  49. /// <summary>
  50. /// 查询方法
  51. /// 注意:尽量不要用select * from table表(返回的数据过长时,DataTable可能会出错),最好指定要查询的字段。
  52. /// </summary>
  53. /// <returns></returns>
  54. public DataTable selectExecute()
  55. {
  56. DataTable dt = new DataTable();
  57. using (reader = command.ExecuteReader(CommandBehavior.CloseConnection))
  58. {
  59. dt.Load(reader);
  60. }
  61. return dt;
  62. }
  63. }
  64. }

使用示例:

1、实例类

  1. string mysqlStr = "Database=mydata_db;Data Source=127.0.0.1;User Id=root;Password=root;;pooling=false;CharSet=utf8;port=3306;"
  2. MysqlBase mysqlBase = new MysqlBase(mysqlStr);

2、查询

  1. //查询
  2. string sql = "select * from student where id=" + id;
  3. mysqlBase.CreateCommand(sql);
  4. DataTable dt = mysqlBase.selectExecute();
  5. if (dt.Rows.Count != 0)
  6. {
  7. int id = Convert.ToInt32(dt.Rows[0][0]);
  8. int name = dt.Rows[0][1];
  9. }
  10. else
  11. {
  12. MessageBox.Show("无数据");
  13. }

3、增、删、改

  1. string sql = "update student set name='张三',age=20 where id="+id;
  2. mysqlBase.CreateCommand(sql);
  3. int res = mysqlBase.commonExecute();
  4. if (res > 0)
  5. {
  6. MessageBox.Show("更新成功");
  7. }else{
  8. MessageBox.Show("更新失败");
  9. }

 

相关技术文章

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载