using irisHelper; using MySql.Data.MySqlClient; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Reflection; using System.Text; using System.Windows.Forms; namespace irisDataBase.Service.mysqlImpl { public class FingerDataServiceImpl : FingerDataService { public DataSet GetAllFingerTemplateLocal() { if (DatabaseLocal.mySqlConnect.State == ConnectionState.Closed) { int langue = Convert.ToInt32(ConfigHelper.GetAppConfig("language")); if (langue == 1) MessageBox.Show("与本地数据库连接断开,软件即将关闭,请检查后再启动!", "提示"); else MessageBox.Show("Disconnect from local database", "message"); Application.Exit(); return null; } DataSet aDataSet = new DataSet(); string sQry = "SELECT ID, PERSON_ID, FINGER_TEMPLATE, FINGER_LENGTH FROM finger_data"; MySqlCommand aCommand = new MySqlCommand(sQry, DatabaseLocal.mySqlConnect); MySqlDataAdapter aAdapter = new MySqlDataAdapter(); aAdapter.SelectCommand = aCommand; try { aAdapter.Fill(aDataSet); } catch (MySqlException exSqlDb) { LogHelper.WriteErrorLog(MethodBase.GetCurrentMethod().DeclaringType, " getAllFingerTemplateLocal : " + exSqlDb.Message); } catch (Exception ex) { LogHelper.WriteErrorLog(MethodBase.GetCurrentMethod().DeclaringType, " getAllFingerTemplateLocal : " + ex.Message); } return aDataSet; } public int InsertFingerData(Int64 id, Int64 personId, byte[] tempData, int tempLen) { try { if (DatabaseLocal.mySqlConnect.State == ConnectionState.Closed) { MessageBox.Show("与本地数据库断开,软件即将关闭,请检查后再启动!"); Application.Exit(); return -1; } string sQry = "INSERT INTO finger_data(ID, PERSON_ID, FINGER_TEMPLATE, FINGER_LENGTH) values(@ID, @PERSON_ID, @FINGER_TEMPLATE, @FINGER_LENGTH)"; MySqlCommand cmd = new MySqlCommand(sQry, DatabaseLocal.mySqlConnect); cmd.Parameters.Add("@ID", MySqlDbType.Int64, 20).Value = id; cmd.Parameters.Add("@PERSON_ID", MySqlDbType.Int64, 20).Value = personId; cmd.Parameters.Add("@FINGER_TEMPLATE", MySqlDbType.VarBinary, 2048).Value = tempData; cmd.Parameters.Add("@FINGER_LENGTH", MySqlDbType.Int64, 11).Value = tempLen; cmd.ExecuteNonQuery(); cmd.Dispose(); } catch (MySqlException e) { LogHelper.WriteErrorLog(MethodBase.GetCurrentMethod().DeclaringType, " InsertFingerDataLocal : " + e.Message); return -1; } return 0; } } }