版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第十一講
用戶(hù)注冊(cè)窗體實(shí)例
1教學(xué)目標(biāo)掌握用戶(hù)注冊(cè)窗體的設(shè)計(jì)過(guò)程掌握用戶(hù)注冊(cè)的事務(wù)處理過(guò)程掌握將數(shù)據(jù)添加到數(shù)據(jù)庫(kù)的方法完成用戶(hù)注冊(cè)窗體實(shí)例的程序編寫(xiě)2四、主要程序代碼-Access數(shù)據(jù)庫(kù)C#中對(duì)數(shù)據(jù)庫(kù)操作的主要步驟如下:引入命名空間:usingSystem.Data.OleDb;連接數(shù)據(jù)庫(kù)執(zhí)行SQL語(yǔ)句將數(shù)據(jù)添加到數(shù)據(jù)庫(kù)關(guān)閉數(shù)據(jù)庫(kù)3第一步:連接數(shù)據(jù)庫(kù)構(gòu)造連接數(shù)據(jù)庫(kù)的字符串:stringstrcon="JetOLEDB:EngineType=5;Provider=Microsoft.Jet.OLEDB.4.0;DataSource=student.mdb";或者:stringstrcon="JetOLEDB:EngineType=5;Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+@"..\..\student.mdb";內(nèi)容回顧:4使用OleDbConnection創(chuàng)建數(shù)據(jù)庫(kù)的連接cn:OleDbConnectioncn=newOleDbConnection(strcon);打開(kāi)連接:cn.open();第一大步結(jié)束。5第二步:執(zhí)行SQL語(yǔ)句使用OleDbCommand創(chuàng)建對(duì)象cmd:
OleDbCommand
cmd=newOleDbCommand();設(shè)置要執(zhí)行的SQL語(yǔ)句字符串:
stringsqlstr=“select/insert/update/delete…….”;設(shè)置cmd對(duì)象的三個(gè)屬性:
cmd.Connection=cn;
cmd.CommandText=sqlstr;
cmd.CommandType=CommandType.Text;第一步中創(chuàng)建的連接6完整代碼:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Runtime.InteropServices;usingSystem.Windows.Forms;usingSystem.Data.OleDb;namespaceWindowsApplication1{publicpartialclassForm1:Form{9
publicForm1(){InitializeComponent();}privatevoidbutton1_Click(objectsender,EventArgse){if(userid.Text.Trim()==""||passwd.Text.Trim()=="")MessageBox.Show("請(qǐng)輸入用戶(hù)名及密碼","登錄失敗");else{
//連接字符串stringstrcon="JetOLEDB:EngineType=5;Provider=Microsoft.Jet.OLEDB.4.0;DataSource=student.mdb";
//創(chuàng)建數(shù)據(jù)庫(kù)的連接publicOleDbConnectioncn=newOleDbConnection(strcon);10cn.Open();
//打開(kāi)連接
//創(chuàng)建執(zhí)行命令對(duì)象cmdOleDbCommandcmd=newOleDbCommand();
//設(shè)置要執(zhí)行的sql語(yǔ)句sqlstr
stringsqlstr="select*fromuserinfowhereUserName='"+userid.Text.Trim()+"'andPaswd='"+passwd.Text.Trim()+"'";//設(shè)置cmd對(duì)象的三個(gè)屬性cmd.Connection=cn;cmd.CommandText=sqlstr;cmd.CommandType=CommandType.Text;//讀取數(shù)據(jù)并賦值給OleDbDataReader對(duì)象SDR
OleDbDataReaderSDR=cmd.ExecuteReader();SDR.Read()11
if(SDR.HasRows)//讀取到數(shù)據(jù)說(shuō)明存在該用戶(hù),可以登錄{this.hide();//隱藏登錄窗口
Form1frm1=newForm1();//創(chuàng)建并打開(kāi)主界面frm1.Show();}else//否則用戶(hù)不存在MessageBox.Show("用戶(hù)名或密碼錯(cuò)誤","登錄失敗");cn.Close();}}}}12用戶(hù)注冊(cè)窗體代碼的編寫(xiě)name:AddUsername:useridname:passwdname:passwd2name:roletype13SQL語(yǔ)句的編寫(xiě)對(duì)數(shù)據(jù)庫(kù)的操作一般有查詢(xún)記錄、更新(修改)記錄、刪除記錄、插入記錄。查詢(xún)記錄----------
select語(yǔ)句更新記錄----------
update語(yǔ)句刪除記錄----------
delete語(yǔ)句插入記錄----------
insert語(yǔ)句四種SQL語(yǔ)句14常見(jiàn)的SQL語(yǔ)句如下所示:1、選擇語(yǔ)句:例如:select學(xué)號(hào),姓名fromSTU1where數(shù)學(xué)=90select*fromSTU1where姓名=‘劉佳’select學(xué)號(hào),姓名fromSTU1where姓名=‘楚留香’152、INSERT命令(插入命令)格式:INSERTINTO<表文件名>(屬性列表)VALUE(數(shù)據(jù)表)功能:插入一條新記錄。
如:insertintoSTU1(學(xué)號(hào),姓名,計(jì)算機(jī)基礎(chǔ),數(shù)學(xué),馬列原理,體育,總分,平均分)values(‘962105’,‘李小麗’,77,88,90,80.2)163、UPDATE命令(更新命令)格式:UPDATE<表文件名>SET<屬性列名>=<表達(dá)式>WHERE<條件表達(dá)式>例如:updateSTU2set就讀方式=‘統(tǒng)招‘
where姓名=‘孫力’174、
DELETE命令(刪除命令)格式:DELETEFROM<表文件名>W(wǎng)HERE<表達(dá)式>如:deletefromSTU2where性別=‘女’
18如何將SQL語(yǔ)句轉(zhuǎn)換為字符串類(lèi)型?如:deletefromSTU2where性別=‘女’deletefromSTU2where性別=‘X’X由文本框中的值決定,輸入男X就是男,否則就是女。由Textbox1.text決定。19如:deletefromSTU2where性別=‘女’Stringstr=“deletefromSTU2where性別=‘Textbox1.text’”;deletefromSTU2where性別=‘Textbox1.text’Stringstr=“deletefromSTU2where性別=‘”+Textbox1.text+“’”;×√哪個(gè)是文本框的值?Strings=“textbox1.text”;Strings=Textbox1.text;20當(dāng)將SQL語(yǔ)句變?yōu)樽址畷r(shí),只需經(jīng)過(guò)下面兩步:1、寫(xiě)出錯(cuò)誤的表達(dá)式:
deletefromSTU2where性別=‘Textbox1.text’2、由第一步得出正確的字符串表達(dá)式:Stringsqlstr=“deletefromSTU2where性別=‘”+Textbox1.text+”’”;21insertintouserinfo(UserName,Paswd)values(‘userid.Text.Trim()'
,
'passwd.Text.Trim()');對(duì)于添加用戶(hù)來(lái)說(shuō)應(yīng)該是insert語(yǔ)句:stringsql="insertintouserinfo(UserName,Paswd)values('"+userid.Text.Trim()+"','"+passwd.Text.Trim()+"')";注冊(cè)窗體的代碼如下所示:22privatevoidbutton1_Click(objectsender,EventArgse){if(userid.text==“”||passwd.text==“”||passwd2.text==“”){MessageBox.show(“請(qǐng)將用戶(hù)名和密碼輸入完整!”);}else{if(passwd.text==passwd2.text)
{
將userid.text的值作為用戶(hù)名,passwd.text的值作為密碼字段添加到數(shù)據(jù)庫(kù)中
}
elseMessageBox.show(“兩次輸入的密碼不一致!”);}}如何向數(shù)據(jù)庫(kù)中添加數(shù)據(jù)呢?23第一步:連接數(shù)據(jù)庫(kù)構(gòu)造連接數(shù)據(jù)庫(kù)的字符串:stringstrcon="JetOLEDB:EngineType=5;Provider=Microsoft.Jet.OLEDB.4.0;DataSource=student.mdb";或者:stringstrcon="JetOLEDB:EngineType=5;Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+@"..\..\student.mdb";24使用OleDbConnection創(chuàng)建數(shù)據(jù)庫(kù)的連接cn:OleDbConnectioncn=newOleDbConnection(strcon);打開(kāi)連接:cn.open();第一大步結(jié)束。25第二步:執(zhí)行SQL語(yǔ)句使用OleDbCommand創(chuàng)建對(duì)象cmd:
OleDbCommand
cmd=newOleDbCommand();設(shè)置要執(zhí)行的SQL語(yǔ)句字符串:
stringsqlstr=“select/insert/update/delete…….”;設(shè)置cmd對(duì)象的三個(gè)屬性:
cmd.Connection=cn;
cmd.CommandText=sqlstr;
cmd.CommandType=CommandType.Text;第一步中創(chuàng)建的連接26調(diào)用cmd對(duì)象的ExecuteNonQuery()方法執(zhí)行SQL語(yǔ)句,并將影響的數(shù)據(jù)庫(kù)記錄的條數(shù)賦值給整型變量:
inti=Convert.ToInt32(cmd.ExecuteNonQuery());第二大步結(jié)束。InsertUpdatedeleteExecuteReader();方法select27第三步:讀取SQL語(yǔ)句所影響記錄的條數(shù)只要數(shù)據(jù)庫(kù)中受影響的記錄條數(shù)不為零,就說(shuō)明成功添加到數(shù)據(jù)庫(kù)中。if(i!=0){
MessageBox.Show(“注冊(cè)成功”,“信息提示");}else
MessageBox.Show(“注冊(cè)失敗”,“信息提示");第四步:關(guān)閉數(shù)據(jù)庫(kù)連接:cn.Close();28stringstr="JetOLEDB:EngineType=5;Provider=Microsoft.Jet.OLEDB.4.0;DataSource=student.mdb";OleDbConnectioncn=newOleDbConnection(str);cn.Open();OleDbCommandcmd=newOleDbCommand();stringsql="insertintouserinfo(UserName,Passwd)values('“+userid.Text.Trim()+"','"+passwd.Text.Trim()+"')";cmd.Connection=cn;cmd.CommandText=sql;
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學(xué)生慶十一國(guó)慶節(jié)征文(5篇)
- 萬(wàn)能的年終工作總結(jié)范文(十篇)
- 產(chǎn)科醫(yī)師年度工作總結(jié)范文
- 企業(yè)會(huì)計(jì)人員工作總結(jié)范文(10篇)
- 安徽省淮北市和淮南市2025屆高三第一次質(zhì)量檢測(cè)思想政治試卷(含答案)
- 我心中的陽(yáng)光5篇
- 公眾號(hào)推廣合作合同(2篇)
- 混凝土罐車(chē)車(chē)租賃合同
- 寫(xiě)字樓買(mǎi)賣(mài)租賃合同
- 批發(fā)市場(chǎng)攤位租賃協(xié)議
- 蒙特利爾認(rèn)知評(píng)估量表北京版
- GB/T 20154-2014低溫保存箱
- 固定資產(chǎn)報(bào)廢管理制度管理辦法
- 深基坑開(kāi)挖及支護(hù)施工方案-經(jīng)專(zhuān)家論證
- 排水管渠及附屬構(gòu)筑物
- 養(yǎng)豬場(chǎng)施工噪聲環(huán)境影響分析
- Windows-Server-2012網(wǎng)絡(luò)服務(wù)架構(gòu)課件(完整版)
- 形位公差_很詳細(xì)(基礎(chǔ)教育)
- 手榴彈使用教案
- 600MW機(jī)組除氧器水位控制系統(tǒng)
- 史上最全的涉稅風(fēng)險(xiǎn)
評(píng)論
0/150
提交評(píng)論