c# mysqlDb 连接在单独的类中

本文关键字:单独 mysqlDb 连接 | 更新日期: 2023-09-27 18:34:52

>我有一个问题。问题是我想在整个项目范围内使用相同的数据库连接。我认为我需要为它创建一个单独的类。我想要什么:我想要像Sqliteconnection组件这样的东西,但对于MYSQL。一个处理与 mysql 数据库连接的类,可从代码中的任何位置访问。谷歌这种东西,在这里用搜索 - 没有运气。我是 c# 的新手,所以我非常感谢您的帮助!

c# mysqlDb 连接在单独的类中

这是一个用于为 sql 服务器创建数据库连接的类,您必须对 Mysql 进行适当的更改;

public class SQLServer
{   
    SqlConnection myConnection = null;
    SqlCommand myCommand = null;
    /// <summary>
    /// Connection information should be stored in the appp.conf
    /// Example:
    /// <add name="SQLConnection" connectionString="Data Source=server;Initial Catalog=YourDatabase;
    ///   Integrated Security="True" providerName="System.Data.SqlClient"/>
    /// </summary>
    public SQLServer()
    {
      string myConfig = ConfigurationManager.ConnectionStrings["SQLConnection"].ConnectionString;
      myConnection = new SqlConnection(myConfig);
      myConnection.Open();
    }
    //Executes sql query and returns datareader     
    public SqlDataReader NewReader(string sSQL)
    {
      myCommand = new SqlCommand(sSQL, myConnection);
      SqlDataReader myReader = myCommand.ExecuteReader();
      return myReader;
    }
    //Execute sql statement and returns nothing usefull for inserts and updates
    public void Execute(string SQL)
    {
      Execute(SQL, false);
    }
 }

使用该类;

SQLServer myClass = new SQLServer();
SqlDataReader myReader = myClass.NewReader("SQL Syntax");
while (myReader.Read())
{
  MessageBox.Show(myReader["some_field"].ToString())
}

我省略了任何错误处理和关闭连接,请确保您这样做以避免出现问题。