using System; using System.Data ; using System.Data .OleDb ; using System.Collections ; using System.Windows .Forms ; namespace MailManageSystem.RegisterAccount { /// /// AccountOperate 的摘要说明。 /// public class AccountOperate { //定义一个连接数据库的字符串 string conn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Application.StartupPath+"\\Manage.mdb"; public AccountOperate() { // // TODO: 在此处添加构造函数逻辑 // } /// /// 向数据库中插入数据 /// /// public void AddDelAccount(string insert) { OleDbConnection myconn=new OleDbConnection (conn); myconn.Open (); OleDbCommand cmd=new OleDbCommand(insert,myconn); try { cmd.ExecuteNonQuery (); } catch(Exception ex) { MessageBox.Show (ex.ToString ()); } finally { myconn.Close (); } } /// /// 选中的帐户的相关信息 /// /// 选择的语句 /// public string[] AccountFileInfo(string sql) { string []AccountInfo=new string [5]; OleDbConnection myconn=new OleDbConnection (conn); myconn.Open (); try { OleDbCommand mycmd=new OleDbCommand(sql,myconn); OleDbDataReader myread=mycmd.ExecuteReader (); while(myread.Read ()) { AccountInfo[0]=myread["UserName"].ToString (); AccountInfo[1]=myread["Passw"].ToString (); AccountInfo[2]=myread["MailAddress"].ToString (); AccountInfo[3]=myread["Smtp"].ToString (); AccountInfo[4]=myread["port"].ToString (); } } catch(Exception ex) { MessageBox.Show (ex.ToString ()); } finally { myconn.Close (); } return AccountInfo; } /// /// 从数据库中读出需要的数据(主要用于显示所有的帐户) /// /// 执行的语句 /// public ArrayList ReadFromDataBase(string sql,string parameter) { ArrayList array=new ArrayList (); OleDbConnection myconn=new OleDbConnection (conn); myconn.Open (); try { OleDbCommand mycmd=new OleDbCommand(sql,myconn); OleDbDataReader myread=mycmd.ExecuteReader (); while(myread.Read ()) { array.Add (myread[parameter]); } } catch(Exception ex) { MessageBox.Show (ex.ToString ()); } finally { myconn.Close (); } return array; } /// /// 此函数的作用是来判断用户名是否已经被使用,调用的方法是通过Sql语句,以及一个字符串变量 /// /// /// /// public bool CheckAccount(string sql,string username) { // 设置标志位用来标识是否被使用 bool state=false; OleDbConnection myconn=new OleDbConnection (conn); myconn.Open (); OleDbCommand cmd2=new OleDbCommand(sql,myconn); OleDbDataReader myread=cmd2.ExecuteReader (); if(username!="") { try { while(myread.Read ()) { //读取用户名来和用户输入的注册名匹配,如果匹配设置标志位为真 if(myread.GetString (0).Trim()==username) { state=true; break; } } } catch(Exception E) { Console.WriteLine (E.ToString ()); } finally { myread.Close (); myconn.Close (); } } return state; } } }