摘要:[c#]與MySQL連線
先上MySQL的官網下載MySQL Connectors :http://www.mysql.com/downloads/connector/net/
下載後在你的專案裡加入參考即可使用喔! 要注意你專案屬性中的「目標Framework」的版本和 MySQL Connectors (DLL)的版本要相容。
///
/// 更新MySQL資料庫
///
private void SaveMySqlDB()
{
string dbHost = "資料庫ip";
string dbUser = "資料庫登入ID";
string dbPass = "資料庫登入密碼";
string dbName = "資料庫名稱";
MySqlConnection mySqlConn = null;
string strMySqlServer = String.Format("server=" + dbHost + ";user id=" + dbUser + "; password=" + dbPass + "; database=" + dbName + ";");
mySqlConn = new MySqlConnection(strMySqlServer);
// 連線到資料庫
try
{
if (mySqlConn.State == ConnectionState.Closed)
mySqlConn.Open();
}
catch (MySql.Data.MySqlClient.MySqlException ex)
{
switch (ex.Number)
{
case 0:
Console.WriteLine("無法連線到資料庫.");
break;
case 1045:
Console.WriteLine("使用者帳號或密碼錯誤,請再試一次.");
break;
}
}
//取得某筆資料
MySqlCommand command = mySqlConn.CreateCommand();
command.CommandText = "select name from FAUSER where idaccount=@p_empno ";
command.Parameters.Add("@p_empno", MySqlDbType.VarChar, 10);
command.Parameters["@p_empno"].Value = Utilities.empno1.p_empno;
MySqlDataReader myDatareader = command.ExecuteReader();
if (myDatareader.HasRows)
{
myDatareader.Close();
Console.WriteLine(Utilities.empno1.p_empno);
//更新某筆資料
MySqlCommand command1 = mySqlConn.CreateCommand();
command1.CommandText = "update FAUSER set f1=@f1,cardno=@p_cardno,creatdt=@updatedt where idaccount=@p_empno ";
command1.Parameters.Add("@f1", MySqlDbType.Blob);
command1.Parameters.Add("@p_cardno", MySqlDbType.VarChar, 10);
command1.Parameters.Add("@updatedt", MySqlDbType.DateTime, 30);
command1.Parameters.Add("@p_empno", MySqlDbType.VarChar, 10);
command1.Parameters["@f1"].Value = empno1.f1;
command1.Parameters["@p_cardno"].Value = empno1.p_cardno == null ? "" : empno1.p_cardno;
command1.Parameters["@updatedt"].Value = DateTime.Now;
command1.Parameters["@p_empno"].Value = empno1.p_empno;
int rows = command1.ExecuteNonQuery();
}
//關閉連線
mySqlConn.Close();
mySqlConn = null;
}