一奠宜、效果圖
二米愿、畫面主要功能及后臺(tái)數(shù)據(jù)庫表結(jié)構(gòu)
功能:實(shí)現(xiàn)登錄信息到數(shù)據(jù)庫服務(wù)器上驗(yàn)證
后臺(tái)數(shù)據(jù)庫表結(jié)構(gòu):
[ID] [int]
[NAME] varchar
[PASSWORD] varchar
[PHONE] varchar
三、ADO.NET查詢數(shù)據(jù)庫的流程
(1)導(dǎo)入命名空間
(2)運(yùn)用Connection對(duì)象建立與數(shù)據(jù)庫連接
(3)打開連接
(4)利用Command對(duì)象的ExecuteReader()方法執(zhí)行Select查詢語句
(5)利用ExecuteReader()方法返回的DataReader對(duì)象讀取數(shù)據(jù)梦鉴,顯示到界面上集绰;
(6)關(guān)閉連接
四、重要代碼
if (this.cbb_UserType.Text == "收銀員")
{
// 注意USER是SQL Server關(guān)鍵字绿鸣,表名不能命名為USER疚沐,而應(yīng)當(dāng)用USERS
sqlStr = "select * from USERS where ID=@id and PASSWORD=@pwd";
}
else
{
sqlStr = "select * from ADMIN where ID=@id and PASSWORD=@pwd";
}
SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);
// 注意是用用戶ID登錄,而不是用戶名潮模,用戶名可能會(huì)重復(fù)
cmd.Parameters.Add(new SqlParameter("@id", this.tb_User.Text.Trim()));
cmd.Parameters.Add(new SqlParameter("@pwd", this.tb_Password.Text.Trim()));
SqlDataReader dr = cmd.ExecuteReader();
// 如果從數(shù)據(jù)庫中查詢到記錄亮蛔,則表示可以登錄
if (dr.HasRows)
{
dr.Read();
UserInfo.userId = int.Parse(dr["ID"].ToString());
UserInfo.userName = dr["NAME"].ToString();
UserInfo.userPwd = dr["PASSWORD"].ToString();
UserInfo.userPhone = dr["PHONE"].ToString();
UserInfo.userType = this.cbb_UserType.Text;
MessageBox.Show(UserInfo.userType + "登錄成功");
if (UserInfo.userType == "收銀員")
{
// 顯示收銀員主界面
MainFormUser formUser = new MainFormUser();
formUser.Show();
// 隱藏登錄界面
this.Hide();
}
if (UserInfo.userType == "庫管員")
{
// 顯示庫管員主界面
MainFormAdmin formAdmin = new MainFormAdmin();
formAdmin.Show();
// 隱藏登錄界面
this.Hide();
}
}