2.5登錄用戶驗(yàn)證功能設(shè)計(jì)
1.ADO.NET :數(shù)據(jù)庫訪問技術(shù),提供了兩個(gè)核心組件來訪問數(shù)據(jù)庫:.NET Framework數(shù)據(jù)提供程序和DataSet數(shù)據(jù)集
2.ADO.NET查詢數(shù)據(jù)庫的流程
1)運(yùn)用Connection對(duì)象建立與數(shù)據(jù)庫連接玄窝;
2)導(dǎo)入命名空間;
3)打開連接蚁滋;
4)利用Command對(duì)象的ExecuteReader()方法執(zhí)行Select查詢語句丽惭;
- 利用ExecuteReader()方法返回的DataReader對(duì)象讀取數(shù)據(jù)痪蝇,顯示到界面上;
- 關(guān)閉連接
3沮协、具體解析
ER圖
圖片1.png
具體數(shù)據(jù)表
圖片5.png
登錄界面
圖片7.png
核心代碼連接數(shù)據(jù)庫
tring connstr = "Data Source=.;InitialCatalog=z.2017270387;Integrated Security=True";
SqlConnection sqlConn = new SqlConnection(connstr);
構(gòu)造查詢語句并提交
String sqlstr = "sqlect * from z2017270387";
SqlCommand cmd = new SqlCommand(sqlstr, sqlConn);
SqlDataReader dr = cmd.ExecuteReader();
獲取數(shù)據(jù)庫返回的數(shù)據(jù)
while (dr.Read())
{
string id = dr["id"].ToString();
string name = dr["name"].ToString();
string password=dr ["password"].ToString();
string tel=dr ["tel"].ToString()
2.6密碼修改界面功能設(shè)計(jì)
1.修改密碼登陸界面
圖片4.png
用戶登錄成功后辆飘,進(jìn)入系統(tǒng)主界面啦辐。
用戶通過點(diǎn)擊主界面上的“修改密碼”菜單,打開密碼修改界面蜈项。
密碼修改界面上芹关,默認(rèn)顯示出當(dāng)前登錄的用戶名。
2.ADO.NET實(shí)現(xiàn)查詢數(shù)據(jù)庫
1)運(yùn)用Connection對(duì)象建立與數(shù)據(jù)庫連接战得;
2)導(dǎo)入命名空間;
3)打開連接充边;
4)利用Command對(duì)象的ExecuteReader()方法執(zhí)行Select查詢語句;
- 利用ExecuteReader()方法返回的DataReader對(duì)象讀取數(shù)據(jù)常侦,顯示到界面上浇冰;
- 關(guān)閉連接
3.關(guān)鍵代碼
// 連接字符串,注意與實(shí)際環(huán)境保持一致
String connStr = "Data Source=.;Initial
Catalog=SuperMarketSales;Integrated Security=True";
SqlConnection sqlConn = new SqlConnection(connStr);
try
{
// 連接數(shù)據(jù)庫
sqlConn.Open();
// 構(gòu)造UPDATE命令聋亡,更改數(shù)據(jù)庫肘习,參見后面PPT
}
catch (Exception exp)
{
MessageBox.Show("訪問數(shù)據(jù)庫錯(cuò)誤:" + exp.Message);
}
finally
{
sqlConn.Close();
}
// 構(gòu)造UPDATE命令
String sqlStr = "update EMPLOYEE set PASSWORD=@pwd where ID=@id";
SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);
// SQL字符串參數(shù)賦值
cmd.Parameters.Add(new SqlParameter("@pwd", newPwd));
cmd.Parameters.Add(new SqlParameter("@id", UserInfo.userId));
// 將命令發(fā)送給數(shù)據(jù)庫
int res = cmd.ExecuteNonQuery();
// 根據(jù)返回值判斷是否修改成功
if (res != 0)
{
MessageBox.Show("密碼修改成功");
this.Close();
}
else
{
MessageBox.Show("密碼修改錯(cuò)誤");
}