C#怎樣連結mysql資料庫
C#一般連結sqlserver資料庫,當然也會連結oracle。C#和MYSQL搭配貌似不多見哦
下面說說方法。
1、下載連結庫檔案,MySql.Data.dll
2、工程引用檔案,並在類檔案中應用using
using MySql.Data; using MySql.Data.MySqlClient;
3、下來其他就和sqlserver差不多了。
4、配置檔案中的連結字串和連結變數
<appSettings> <add key="conn" value="Database='tdm';Data Source='localhost';User Id='root';Password='root';charset='utf8';pooling=true"/> </appSettings>
public static string Conn = System.Configuration.ConfigurationManager.AppSettings["conn"];
5、定義兩個常用的資料庫類方法,操作資料庫和查詢
public static int ExecuteNonQuery(CommandType cmdType, string cmdText, params MySqlParameter[] commandParameters) {
MySqlCommand cmd = new MySqlCommand();
using (MySqlConnection conn = new MySqlConnection(Conn))
{
PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
int val = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
return val;
}
}
public static DataSet GetDataSet(CommandType cmdType, string cmdText, params MySqlParameter[] commandParameters)
{
//建立一個MySqlCommand物件
MySqlCommand cmd = new MySqlCommand();
//建立一個MySqlConnection物件
MySqlConnection conn = new MySqlConnection(Conn);
try {
//呼叫 PrepareCommand 方法,對 MySqlCommand 物件設定引數
PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
//呼叫 MySqlCommand 的 ExecuteReader 方法
MySqlDataAdapter adapter = new MySqlDataAdapter();
adapter.SelectCommand = cmd;
DataSet ds = new DataSet();
adapter.Fill(ds);
//清除引數
cmd.Parameters.Clear();
conn.Close();
return ds;
}
catch (Exception e ) { throw e; } }
private static void PrepareCommand(MySqlCommand cmd, MySqlConnection conn, MySqlTransaction trans, CommandType cmdType, string cmdText, MySqlParameter[] cmdParms) {
if (conn.State != ConnectionState.Open)
conn.Open();
cmd.Connection = conn;
cmd.CommandText = cmdText;
if (trans != null)
cmd.Transaction = trans;
cmd.CommandType = cmdType;
if (cmdParms != null) {
foreach (MySqlParameter parm in cmdParms)
cmd.Parameters.Add(parm);
} }
6、使用方法,顯示資料
private void button2_Click(object sender, EventArgs e) {
string sql="select * from deviceinfo";
try {
dataGridView1.DataSource = MySqlHelper.GetDataSet( CommandType.Text,sql,null).Tables[0]; } catch (Exception) {
this.Text = "資料庫連線失敗"; }
}
7、使用方法,對資料進行增刪改
try {
string sql = "select * from deviceinfo";
DataTable dt = MySqlHelper.GetDataSet(CommandType.Text, sql, null).Tables[0];
for (int i = 0; i < dt.Rows.Count; i++)
{
sql = "update deviceinfo set devicestatus=" + fsMakeStatuts().ToString() + " where deviceid='" + dt.Rows[i]["deviceid"].ToString() + "'"; MySqlHelper.ExecuteNonQuery(CommandType.Text, sql, null);
}
} catch (Exception) {
this.Text = "err"; }
原文連結:C#怎樣連結mysql資料庫