ASP.NET 连接MySql数据库

时间:2024-11-03 13:35:14

ASP.NET Mysql操作类

以下连接MySql数据库以VS2010为例,对于其他的编辑器也差不多

1. 我们需要在Mysql官网下载一个组件http://dev.mysql.com/downloads/connector/net/  下载最新版的即可,并且安装connector,其实仅仅只是为了得到Mysql.Data.dll ( 0.0 )

2. 在你的VS2010 解决方案管理器里面添加 Mysql.Data.dll 引用(通常在c:\program files\MySQL\MySQL Connector Net(your version here)\Assemblies\v4.0 or v2.0)

3. 在你的web.config里面添加connection:

  1. <connectionStrings>
  2. <add name="MySQLConnString" connectionString="Server=your_MySql_Server_IP;Port=3306;Database=databaseName;Uid=username;Pwd=yourpassword;pooling=false;" providerName="MySql.Data.MySqlClient"/>
  3. </connectionStrings>

4. 在你的代码前面添加using MySQL.Data.MySqlClient;

下面是个简单的连接Mysql 并且使用的例子

  1. protected void Page_Load(object sender, EventArgs e)
  2. {
  3. DataSet ds_temp = GetObjects();
  4. ListBox1.DataSource = ds_temp;
  5. ListBox1.DataTextField = "yourColumn";
  6. ListBox1.DataValueField = "yourColumn";
  7. ListBox1.DataBind();
  8. }
  9. protected static DataSet GetObjects()
  10. {
  11. DataSet ds_temp = Connection_cls.GetDataSetQuery("SELECT yourColumn FROM yourtable", null);
  12. return ds_temp;
  13. }
  14. private static string getHostString()
  15. {
  16. string host = ConfigurationManager.ConnectionStrings["MySQLConnString"].ConnectionString;
  17. return host;
  18. }
  19. public static DataSet GetDataSetQuery(string sql, ArrayList paramList)
  20. {
  21. using (MySqlConnection conn = new MySqlConnection(getHostString()))
  22. {
  23. try
  24. {
  25. conn.Open();
  26. MySqlDataAdapter da = new MySqlDataAdapter(sql, conn);
  27. da.SelectCommand.Parameters.Clear();
  28. if (paramList != null)
  29. {
  30. for (int i = 0; i < paramList.Count; i++)
  31. {
  32. da.SelectCommand.Parameters.Add(paramList[i] as MySqlParameter);
  33. }
  34. }
  35. DataSet ds = new DataSet();
  36. da.Fill(ds);
  37. return ds;
  38. }
  39. finally
  40. {
  41. conn.Close();
  42. }
  43. }
  44. }

Mysql官方.net连接文档:

I'm using Visual Web Developer 2010 Express Edition (and Visual C# 2010 Express) with MySQL. This is what I did:

1 - Download and install MySQL connector(just to get MySql.Data.dll).

2 - VWD 2010 in the Solution Explorer add reference to MySql.Data.dll(usually in c:\program files\MySQL\MySQL Connector Net(your version here)\Assemblies\v4.0 or v2.0)

3 - In the web.config add your string connection:
<connectionStrings>
<add name="MySQLConnString" connectionString="Server=your_MySql_Server_IP;Port=3306;Database=databaseName;Uid=username;Pwd=yourpassword;pooling=false;" providerName="MySql.Data.MySqlClient"/>
</connectionStrings>

4 - In the code behind type in: "using MySQL.Data.MySqlClient;"

Now you can use it as in this example:

protected void Page_Load(object sender, EventArgs e)
{
DataSet ds_temp = GetObjects();
ListBox1.DataSource = ds_temp;
ListBox1.DataTextField = "yourColumn";
ListBox1.DataValueField = "yourColumn";
ListBox1.DataBind();
}

protected static DataSet GetObjects()
{
DataSet ds_temp = Connection_cls.GetDataSetQuery("SELECT yourColumn FROM yourtable", null);
return ds_temp;

}

private static string getHostString()
{
string host = ConfigurationManager.ConnectionStrings["MySQLConnString"].ConnectionString;
return host;
}
public static DataSet GetDataSetQuery(string sql, ArrayList paramList)
{
using (MySqlConnection conn = new MySqlConnection(getHostString()))
{
try
{
conn.Open();
MySqlDataAdapter da = new MySqlDataAdapter(sql, conn);
da.SelectCommand.Parameters.Clear();
if (paramList != null)
{
for (int i = 0; i < paramList.Count; i++)
{
da.SelectCommand.Parameters.Add(paramList[i] as MySqlParameter);
}
}
DataSet ds = new DataSet();
da.Fill(ds);
return ds;
}
finally
{
conn.Close();
}
}

}