C#程序設(shè)計(jì)(第2版)7-1課件_第1頁
C#程序設(shè)計(jì)(第2版)7-1課件_第2頁
C#程序設(shè)計(jì)(第2版)7-1課件_第3頁
C#程序設(shè)計(jì)(第2版)7-1課件_第4頁
C#程序設(shè)計(jì)(第2版)7-1課件_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

單元7綜合應(yīng)用《C#程序設(shè)計(jì)》課程概述單元7綜合應(yīng)用《C#程序設(shè)計(jì)》課程概述1學(xué)習(xí)內(nèi)容什么是三層架構(gòu)和實(shí)體類0102如何搭建三層架構(gòu)學(xué)習(xí)內(nèi)容什么是三層架構(gòu)和實(shí)體類0102如何搭建三層架構(gòu)2目錄頁P(yáng)AGEOFCONTENT01新建項(xiàng)目02認(rèn)識(shí)項(xiàng)目文件03開始編寫C#代碼04編譯、調(diào)試項(xiàng)目目錄頁P(yáng)AGEOFCONTENT01新建項(xiàng)目02認(rèn)識(shí)項(xiàng)3知識(shí)點(diǎn)名稱根據(jù)自己的需要添加適當(dāng)?shù)奈淖郑瑩?jù)研究,在幻燈片中,一頁的文字最好不要超過200字根據(jù)需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈片中,一頁的文字最好不要超過200字根據(jù)自己的需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈片中,一頁的文字最好不要超過200字根據(jù)自己的需要添加適當(dāng)?shù)奈淖郑瑩?jù)研究,在幻燈片中,一頁的文字最好不要超過200字添加內(nèi)容添加內(nèi)容添加內(nèi)容添加內(nèi)容知識(shí)點(diǎn)名稱根據(jù)自己的需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈4什么是三層架構(gòu)和實(shí)體類01什么是三層架構(gòu)和實(shí)體類0151什么是三層架構(gòu)和實(shí)體類一種代碼的組織形式,其中包括:表示層(UI)、業(yè)務(wù)邏輯層(BLL)和數(shù)據(jù)訪問層(DAL)1)表示層:為用戶提供交互操作界面,用于顯示和接收用戶提交的數(shù)據(jù),為用戶提供交互式的界面。表示層一般為Windows窗體應(yīng)用程序或Web應(yīng)用程序。2)業(yè)務(wù)邏輯層:負(fù)責(zé)關(guān)鍵業(yè)務(wù)的處理和數(shù)據(jù)的傳遞,不會(huì)直接對(duì)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行操作,該層一般為類庫。3)數(shù)據(jù)訪問層:負(fù)責(zé)數(shù)據(jù)庫數(shù)據(jù)的訪問,根據(jù)傳入的值來操作數(shù)據(jù)庫,實(shí)現(xiàn)對(duì)數(shù)據(jù)的讀取、保存和更新等操作。數(shù)據(jù)訪問層通常為類庫。1什么是三層架構(gòu)和實(shí)體類一種代碼的組織形式,其中包括:表示層61什么是三層架構(gòu)和實(shí)體類為便于在各層間傳遞數(shù)據(jù),通常再添加一個(gè)類庫,即實(shí)體類庫。其中封裝的每個(gè)類都對(duì)應(yīng)一個(gè)實(shí)體,即數(shù)據(jù)庫中的一張表。1什么是三層架構(gòu)和實(shí)體類為便于在各層間傳遞數(shù)據(jù),通常再添加一7如何搭建三層架構(gòu)02如何搭建三層架構(gòu)028如何搭建三層架構(gòu)2將【例6.8】中顯示表T_Stu學(xué)生信息的代碼用三層架構(gòu)來重新進(jìn)行組織1)創(chuàng)建表示層2)創(chuàng)建業(yè)務(wù)邏輯層3)創(chuàng)建數(shù)據(jù)訪問層4)創(chuàng)建實(shí)體類5)添加各層之間依賴關(guān)系如何搭建三層架構(gòu)2將【例6.8】中顯示表T_Stu學(xué)生信息的9如何搭建三層架構(gòu)2添加代碼1)在實(shí)體類庫定義類Student2)在數(shù)據(jù)訪問層定義數(shù)據(jù)庫操作類DBHelper3)在數(shù)據(jù)訪問層定義數(shù)據(jù)訪問類StuService4)在業(yè)務(wù)邏輯層定義類StuManager5)編寫表示層如何搭建三層架構(gòu)2添加代碼10單元7綜合應(yīng)用《C#程序設(shè)計(jì)》課程基于三層架構(gòu)操作數(shù)據(jù)單元7綜合應(yīng)用《C#程序設(shè)計(jì)》課程基于三層架構(gòu)操作數(shù)據(jù)11學(xué)習(xí)內(nèi)容什么是三層架構(gòu)和實(shí)體類0102如何搭建三層架構(gòu)學(xué)習(xí)內(nèi)容什么是三層架構(gòu)和實(shí)體類0102如何搭建三層架構(gòu)12目錄頁P(yáng)AGEOFCONTENT01實(shí)現(xiàn)學(xué)生信息的添加02實(shí)現(xiàn)學(xué)生信息的修改03實(shí)現(xiàn)學(xué)生信息的刪除目錄頁P(yáng)AGEOFCONTENT01實(shí)現(xiàn)學(xué)生信息的添加13知識(shí)點(diǎn)名稱根據(jù)自己的需要添加適當(dāng)?shù)奈淖郑瑩?jù)研究,在幻燈片中,一頁的文字最好不要超過200字根據(jù)需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈片中,一頁的文字最好不要超過200字根據(jù)自己的需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈片中,一頁的文字最好不要超過200字根據(jù)自己的需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈片中,一頁的文字最好不要超過200字添加內(nèi)容添加內(nèi)容添加內(nèi)容添加內(nèi)容知識(shí)點(diǎn)名稱根據(jù)自己的需要添加適當(dāng)?shù)奈淖郑瑩?jù)研究,在幻燈14實(shí)現(xiàn)學(xué)生信息的添加01實(shí)現(xiàn)學(xué)生信息的添加0115實(shí)現(xiàn)學(xué)生信息的添加1(1)在數(shù)據(jù)訪問層類StuService中添加AddStudent方法public

boolAddStudent(StudentnewStu)

{

stringsqlStr="insertintoT_Stuvalues(@ID,@name,@age)";

SqlParameter[]param=new

SqlParameter[]{

new

SqlParameter("@ID",newStu.ID),

new

SqlParameter("@name",newStu.Name),

new

SqlParameter("@age",newStu.Age)};

return

DBHelper.ExcuteCommand(sqlStr,param);}實(shí)現(xiàn)學(xué)生信息的添加1(1)在數(shù)據(jù)訪問層類StuService16實(shí)現(xiàn)學(xué)生信息的添加(2)在業(yè)務(wù)邏輯層類StuManager中添加AddStudent方法

public

boolAddStudent(StudentnewStu){

returnstu.AddStudent(newStu);}1實(shí)現(xiàn)學(xué)生信息的添加(2)在業(yè)務(wù)邏輯層類StuManager中17實(shí)現(xiàn)學(xué)生信息的添加(3)在表示層獲取輸入的學(xué)生信息

private

voidbtnAdd_Click(objectsender,EventArgse){

StudentnewStu=new

Student();newStu.ID=int.Parse(txtID.Text);newStu.Name=txtName.Text;newStu.Age=int.Parse(txtAge.Text);

if(stu.AddStudent(newStu)){

MessageBox.Show("添加成功");dataGridView1.DataSource=stu.GetStudentList();}

else

MessageBox.Show("添加失敗");}1實(shí)現(xiàn)學(xué)生信息的添加(3)在表示層獲取輸入的學(xué)生信息118實(shí)現(xiàn)學(xué)生信息的修改02實(shí)現(xiàn)學(xué)生信息的修改0219實(shí)現(xiàn)學(xué)生信息的修改2(1)在數(shù)據(jù)訪問層類StuService中添加UpdateStudent方法

public

boolUpdateStudent(Studentstu){

stringsqlstr="updateT_Stusetname=@name,age=@agewhereID=@id";

SqlParameter[]param=new

SqlParameter[]{

new

SqlParameter("@name",stu.Name),

new

SqlParameter("@age",stu.Age),

new

SqlParameter("@ID",stu.ID)};

return

DBHelper.ExcuteCommand(sqlstr,param);}實(shí)現(xiàn)學(xué)生信息的修改2(1)在數(shù)據(jù)訪問層類StuService20實(shí)現(xiàn)學(xué)生信息的修改2(2)在業(yè)務(wù)邏輯層類StuManager中添加UpdateStudent方法

public

boolUpdateStudent(Students){

returnstu.UpdateStudent(s);}實(shí)現(xiàn)學(xué)生信息的修改2(2)在業(yè)務(wù)邏輯層類StuManager21實(shí)現(xiàn)學(xué)生信息的修改2(3)在表示層獲取要修改的學(xué)生信息private

voiddataGridView1_CellClick(objectsender,DataGridViewCellEventArgse){

if(dataGridView1.SelectedRows.Count<=0) {

MessageBox.Show("請(qǐng)選中一行進(jìn)行操作");

return;}txtID.Text=dataGridView1.SelectedRows[0].Cells[0].Value.ToString();txtName.Text=dataGridView1.SelectedRows[0].Cells[1].Value.ToString();txtAge.Text=dataGridView1.SelectedRows[0].Cells[2].Value.ToString();}

private

voidbtnUpdate_Click(objectsender,EventArgse){

if(dataGridView1.SelectedRows.Count<=0) {

MessageBox.Show("請(qǐng)選中一行進(jìn)行操作");

return;}

StudentnewStu=new

Student();newStu.ID=int.Parse(dataGridView1.SelectedRows[0].Cells[0].Value.ToString());newStu.Name=txtName.Text;newStu.Age=int.Parse(txtAge.Text);

//保存修改

if(stu.UpdateStudent(newStu)){

MessageBox.Show("修改成功");dataGridView1.DataSource=stu.GetStudentList();}

else

MessageBox.Show("修改失敗");}實(shí)現(xiàn)學(xué)生信息的修改2(3)在表示層獲取要修改的學(xué)生信息22實(shí)現(xiàn)學(xué)生信息的刪除03實(shí)現(xiàn)學(xué)生信息的刪除0323實(shí)現(xiàn)學(xué)生信息的刪除3(1)在數(shù)據(jù)訪問層類DBHelper中添加ExcuteCommand方法的重載public

static

boolExcuteCommand(List<String>sqlStr,List<SqlParameter[]>param){

inti=0;SqlCommandcmd=new

SqlCommand();

using(TransactionScopets=new

TransactionScope()){cmd.Connection=conn;conn.Open();

try{

foreach(stringiteminsqlStr){cmd.CommandType=CommandType.Text; cmd.CommandText=item;

cmd.Parameters.AddRange(param[i]); //添加參數(shù)cmd.ExecuteNonQuery(); //執(zhí)行SQL語句并返回受影響的行數(shù)

i++;

}ts.Complete();

return

true;}

catch{return

false;}

finally{conn.Close();sqlStr.Clear();}}}實(shí)現(xiàn)學(xué)生信息的刪除3(1)在數(shù)據(jù)訪問層類DBHelper中添24(2)在數(shù)據(jù)訪問層類StuService中添加DelStudent方法public

boolDelStudent(intid){

List<String>strSqls=new

List<string>(); //創(chuàng)建集合對(duì)象

List<SqlParameter[]>param=new

List<SqlParameter[]>();

stringstrDelete1="deleteFromT_StuwhereID=@id"; //定義刪除表T_Stu的SQL語句strSqls.Add(strDelete1); //將SQL語句添加到集合中

SqlParameter[]param1=new

SqlParameter[]{

new

SqlParameter("@ID",id)};param.Add(param1);

stringstrDelete2="deleteFromT_SCwhereSno=@sno"; //定義刪除表T_SC的SQL語句strSqls.Add(strDelete2); //將SQL語句添加到集合中

SqlParameter[]param2=new

SqlParameter[]{

new

SqlParameter("@sno",id)};param.Add(param2);

return

DBHelper.ExcuteCommand(strSqls,param);}實(shí)現(xiàn)學(xué)生信息的刪除3(2)在數(shù)據(jù)訪問層類StuService中添加DelStud25(3)在業(yè)務(wù)邏輯層類StuManager中添加DelStudent方法public

boolDelStudent(intid){

returnstu.DelStudent(id);}實(shí)現(xiàn)學(xué)生信息的刪除3(3)在業(yè)務(wù)邏輯層類StuManager中添加DelStud26(4)在表示層獲取待刪除學(xué)生的學(xué)號(hào)private

voidbtnDel_Click(objectsender,EventArgse){

intid;

if(dataGridView1.SelectedRows.Count<=0) {

MessageBox.Show("請(qǐng)選中一行進(jìn)行操作");

return;}id=int.Parse(dataGridView1.SelectedRows[0].Cells[0].Value.ToString());

if(stu.DelStudent(id)){

MessageBox.Show("刪除成功");dataGridView1.DataSource=stu.GetStudentList();txtID.Text="";txtName.Text="";txtAge.Text="";}

else

MessageBox.Show("刪除失敗");}實(shí)現(xiàn)學(xué)生信息的刪除3(4)在表示層獲取待刪除學(xué)生的學(xué)號(hào)實(shí)現(xiàn)學(xué)生信息的刪除327謝謝學(xué)習(xí)謝謝學(xué)習(xí)28單元7綜合應(yīng)用《C#程序設(shè)計(jì)》課程概述單元7綜合應(yīng)用《C#程序設(shè)計(jì)》課程概述29學(xué)習(xí)內(nèi)容什么是三層架構(gòu)和實(shí)體類0102如何搭建三層架構(gòu)學(xué)習(xí)內(nèi)容什么是三層架構(gòu)和實(shí)體類0102如何搭建三層架構(gòu)30目錄頁P(yáng)AGEOFCONTENT01新建項(xiàng)目02認(rèn)識(shí)項(xiàng)目文件03開始編寫C#代碼04編譯、調(diào)試項(xiàng)目目錄頁P(yáng)AGEOFCONTENT01新建項(xiàng)目02認(rèn)識(shí)項(xiàng)31知識(shí)點(diǎn)名稱根據(jù)自己的需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈片中,一頁的文字最好不要超過200字根據(jù)需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈片中,一頁的文字最好不要超過200字根據(jù)自己的需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈片中,一頁的文字最好不要超過200字根據(jù)自己的需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈片中,一頁的文字最好不要超過200字添加內(nèi)容添加內(nèi)容添加內(nèi)容添加內(nèi)容知識(shí)點(diǎn)名稱根據(jù)自己的需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈32什么是三層架構(gòu)和實(shí)體類01什么是三層架構(gòu)和實(shí)體類01331什么是三層架構(gòu)和實(shí)體類一種代碼的組織形式,其中包括:表示層(UI)、業(yè)務(wù)邏輯層(BLL)和數(shù)據(jù)訪問層(DAL)1)表示層:為用戶提供交互操作界面,用于顯示和接收用戶提交的數(shù)據(jù),為用戶提供交互式的界面。表示層一般為Windows窗體應(yīng)用程序或Web應(yīng)用程序。2)業(yè)務(wù)邏輯層:負(fù)責(zé)關(guān)鍵業(yè)務(wù)的處理和數(shù)據(jù)的傳遞,不會(huì)直接對(duì)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行操作,該層一般為類庫。3)數(shù)據(jù)訪問層:負(fù)責(zé)數(shù)據(jù)庫數(shù)據(jù)的訪問,根據(jù)傳入的值來操作數(shù)據(jù)庫,實(shí)現(xiàn)對(duì)數(shù)據(jù)的讀取、保存和更新等操作。數(shù)據(jù)訪問層通常為類庫。1什么是三層架構(gòu)和實(shí)體類一種代碼的組織形式,其中包括:表示層341什么是三層架構(gòu)和實(shí)體類為便于在各層間傳遞數(shù)據(jù),通常再添加一個(gè)類庫,即實(shí)體類庫。其中封裝的每個(gè)類都對(duì)應(yīng)一個(gè)實(shí)體,即數(shù)據(jù)庫中的一張表。1什么是三層架構(gòu)和實(shí)體類為便于在各層間傳遞數(shù)據(jù),通常再添加一35如何搭建三層架構(gòu)02如何搭建三層架構(gòu)0236如何搭建三層架構(gòu)2將【例6.8】中顯示表T_Stu學(xué)生信息的代碼用三層架構(gòu)來重新進(jìn)行組織1)創(chuàng)建表示層2)創(chuàng)建業(yè)務(wù)邏輯層3)創(chuàng)建數(shù)據(jù)訪問層4)創(chuàng)建實(shí)體類5)添加各層之間依賴關(guān)系如何搭建三層架構(gòu)2將【例6.8】中顯示表T_Stu學(xué)生信息的37如何搭建三層架構(gòu)2添加代碼1)在實(shí)體類庫定義類Student2)在數(shù)據(jù)訪問層定義數(shù)據(jù)庫操作類DBHelper3)在數(shù)據(jù)訪問層定義數(shù)據(jù)訪問類StuService4)在業(yè)務(wù)邏輯層定義類StuManager5)編寫表示層如何搭建三層架構(gòu)2添加代碼38單元7綜合應(yīng)用《C#程序設(shè)計(jì)》課程基于三層架構(gòu)操作數(shù)據(jù)單元7綜合應(yīng)用《C#程序設(shè)計(jì)》課程基于三層架構(gòu)操作數(shù)據(jù)39學(xué)習(xí)內(nèi)容什么是三層架構(gòu)和實(shí)體類0102如何搭建三層架構(gòu)學(xué)習(xí)內(nèi)容什么是三層架構(gòu)和實(shí)體類0102如何搭建三層架構(gòu)40目錄頁P(yáng)AGEOFCONTENT01實(shí)現(xiàn)學(xué)生信息的添加02實(shí)現(xiàn)學(xué)生信息的修改03實(shí)現(xiàn)學(xué)生信息的刪除目錄頁P(yáng)AGEOFCONTENT01實(shí)現(xiàn)學(xué)生信息的添加41知識(shí)點(diǎn)名稱根據(jù)自己的需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈片中,一頁的文字最好不要超過200字根據(jù)需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈片中,一頁的文字最好不要超過200字根據(jù)自己的需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈片中,一頁的文字最好不要超過200字根據(jù)自己的需要添加適當(dāng)?shù)奈淖?,?jù)研究,在幻燈片中,一頁的文字最好不要超過200字添加內(nèi)容添加內(nèi)容添加內(nèi)容添加內(nèi)容知識(shí)點(diǎn)名稱根據(jù)自己的需要添加適當(dāng)?shù)奈淖郑瑩?jù)研究,在幻燈42實(shí)現(xiàn)學(xué)生信息的添加01實(shí)現(xiàn)學(xué)生信息的添加0143實(shí)現(xiàn)學(xué)生信息的添加1(1)在數(shù)據(jù)訪問層類StuService中添加AddStudent方法public

boolAddStudent(StudentnewStu)

{

stringsqlStr="insertintoT_Stuvalues(@ID,@name,@age)";

SqlParameter[]param=new

SqlParameter[]{

new

SqlParameter("@ID",newStu.ID),

new

SqlParameter("@name",newStu.Name),

new

SqlParameter("@age",newStu.Age)};

return

DBHelper.ExcuteCommand(sqlStr,param);}實(shí)現(xiàn)學(xué)生信息的添加1(1)在數(shù)據(jù)訪問層類StuService44實(shí)現(xiàn)學(xué)生信息的添加(2)在業(yè)務(wù)邏輯層類StuManager中添加AddStudent方法

public

boolAddStudent(StudentnewStu){

returnstu.AddStudent(newStu);}1實(shí)現(xiàn)學(xué)生信息的添加(2)在業(yè)務(wù)邏輯層類StuManager中45實(shí)現(xiàn)學(xué)生信息的添加(3)在表示層獲取輸入的學(xué)生信息

private

voidbtnAdd_Click(objectsender,EventArgse){

StudentnewStu=new

Student();newStu.ID=int.Parse(txtID.Text);newStu.Name=txtName.Text;newStu.Age=int.Parse(txtAge.Text);

if(stu.AddStudent(newStu)){

MessageBox.Show("添加成功");dataGridView1.DataSource=stu.GetStudentList();}

else

MessageBox.Show("添加失敗");}1實(shí)現(xiàn)學(xué)生信息的添加(3)在表示層獲取輸入的學(xué)生信息146實(shí)現(xiàn)學(xué)生信息的修改02實(shí)現(xiàn)學(xué)生信息的修改0247實(shí)現(xiàn)學(xué)生信息的修改2(1)在數(shù)據(jù)訪問層類StuService中添加UpdateStudent方法

public

boolUpdateStudent(Studentstu){

stringsqlstr="updateT_Stusetname=@name,age=@agewhereID=@id";

SqlParameter[]param=new

SqlParameter[]{

new

SqlParameter("@name",stu.Name),

new

SqlParameter("@age",stu.Age),

new

SqlParameter("@ID",stu.ID)};

return

DBHelper.ExcuteCommand(sqlstr,param);}實(shí)現(xiàn)學(xué)生信息的修改2(1)在數(shù)據(jù)訪問層類StuService48實(shí)現(xiàn)學(xué)生信息的修改2(2)在業(yè)務(wù)邏輯層類StuManager中添加UpdateStudent方法

public

boolUpdateStudent(Students){

returnstu.UpdateStudent(s);}實(shí)現(xiàn)學(xué)生信息的修改2(2)在業(yè)務(wù)邏輯層類StuManager49實(shí)現(xiàn)學(xué)生信息的修改2(3)在表示層獲取要修改的學(xué)生信息private

voiddataGridView1_CellClick(objectsender,DataGridViewCellEventArgse){

if(dataGridView1.SelectedRows.Count<=0) {

MessageBox.Show("請(qǐng)選中一行進(jìn)行操作");

return;}txtID.Text=dataGridView1.SelectedRows[0].Cells[0].Value.ToString();txtName.Text=dataGridView1.SelectedRows[0].Cells[1].Value.ToString();txtAge.Text=dataGridView1.SelectedRows[0].Cells[2].Value.ToString();}

private

voidbtnUpdate_Click(objectsender,EventArgse){

if(dataGridView1.SelectedRows.Count<=0) {

MessageBox.Show("請(qǐng)選中一行進(jìn)行操作");

return;}

StudentnewStu=new

Student();newStu.ID=int.Parse(dataGridView1.SelectedRows[0].Cells[0].Value.ToString());newStu.Name=txtName.Text;newStu.Age=int.Parse(txtAge.Text);

//保存修改

if(stu.UpdateStudent(newStu)){

MessageBox.Show("修改成功");dataGridView1.DataSource=stu.GetStudentList();}

else

MessageBox.Show("修改失敗");}實(shí)現(xiàn)學(xué)生信息的修改2(3)在表示層獲取要修改的學(xué)生信息50實(shí)現(xiàn)學(xué)生信息的刪除03實(shí)現(xiàn)學(xué)生信息的刪除0351實(shí)現(xiàn)學(xué)生信息的刪除3(1)在數(shù)據(jù)訪問層類DBHelper中添加ExcuteCommand方法的重載public

static

boolExcuteCommand(List<String>sqlStr,List<SqlParameter[]>param){

inti=0;SqlCommandcmd=new

SqlCommand();

using(TransactionScopets=new

TransactionScope()){cmd.Connection=conn;conn.Open();

try{

foreach(stringiteminsqlStr){cmd.CommandType=CommandType.Text; cmd.CommandText=item;

cmd.Parameters.AddRange(param[i]); //添加參數(shù)cmd.ExecuteNonQuery(); //執(zhí)行SQL語句并返回受影響的行數(shù)

i++;

}ts.Complete();

return

true;}

catch{return

false;}

finally{conn.Close();sqlStr.Clear();}}}實(shí)現(xiàn)學(xué)生信息的刪除3(1)在數(shù)據(jù)訪問層類DBHelper中添52(2)在數(shù)據(jù)訪問層類StuService中添加DelStudent方法public

boolDelStudent(intid){

List<String>strSqls=new

List<string>(); //創(chuàng)建集合對(duì)象

List<SqlParameter[]>param=new

List<SqlParameter[]>();

stringstrDelete1="deleteFromT_StuwhereID=@id"; //

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論