版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)據(jù)庫(kù)技術(shù)I(2010年秋)序號(hào):數(shù)據(jù)庫(kù)技術(shù)I實(shí)驗(yàn)報(bào)告系別:班級(jí):XX:學(xué)號(hào):成績(jī):評(píng)語(yǔ):指導(dǎo)教師簽字:日期:實(shí)驗(yàn)一數(shù)據(jù)庫(kù)的建立及數(shù)據(jù)維護(hù)一、實(shí)驗(yàn)?zāi)康?.學(xué)會(huì)使用企業(yè)管理器和查詢分析器創(chuàng)建數(shù)據(jù)庫(kù)、創(chuàng)建基本表和查看數(shù)據(jù)庫(kù)屬性。2.學(xué)會(huì)使用企業(yè)管理器和查詢分析器向數(shù)據(jù)庫(kù)輸入數(shù)據(jù),修改數(shù)據(jù),刪除數(shù)據(jù)的操作。3.在SOLServer查詢分析器中完成復(fù)雜查詢及視圖定義。二、實(shí)驗(yàn)環(huán)境及要求數(shù)據(jù)庫(kù)實(shí)驗(yàn)要求如下環(huán)境,服務(wù)器端:Windows2000/xp、數(shù)據(jù)庫(kù)服務(wù)器(SQLServer2005)、Web服務(wù)器(IIS5.0)和ASP。客戶端:IE5.0、VB6.0。要求:1、根據(jù)以上數(shù)據(jù)字典,畫出該數(shù)據(jù)庫(kù)的ER圖,完成數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì);2、將ER圖轉(zhuǎn)換成邏輯關(guān)系模式,判斷邏輯數(shù)據(jù)庫(kù)模式中的各個(gè)關(guān)系(表)是第幾X式,如果沒(méi)有達(dá)到第三X式或BCX式,請(qǐng)進(jìn)行規(guī)X化。完成數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì)。3、通過(guò)企業(yè)管理器或者查詢分析器實(shí)現(xiàn)關(guān)系模式的存儲(chǔ),包括確定主碼、外部碼等。4、通過(guò)企業(yè)管理器或查詢分析器向數(shù)據(jù)庫(kù)中輸入數(shù)據(jù)。5、打開數(shù)據(jù)庫(kù)2005的查詢分析器,用語(yǔ)言完成以下語(yǔ)句。并通過(guò)實(shí)驗(yàn)結(jié)果驗(yàn)證查詢語(yǔ)言的正確性,將每個(gè)語(yǔ)言及結(jié)果存盤,以備老師檢查。(1)求全體學(xué)生的學(xué)號(hào)、XX和出生年份。(2)求每個(gè)系的學(xué)生總?cè)藬?shù)并按降序排列。(3)求選修了課程號(hào)為002或003的學(xué)生的學(xué)號(hào)、課程名和成績(jī)。(4)檢索選修某課程的學(xué)生人數(shù)多于3人的教師XX。(5)查詢所有未選課程的學(xué)生XX和所在系。(6)求每個(gè)同學(xué)的課程成績(jī)的最高分,查詢結(jié)果項(xiàng)包括:學(xué)生XX、課程號(hào)及最高分。(7)求所有講授數(shù)據(jù)結(jié)構(gòu)課程的教師XX(8)查詢所有選修了李正科老師的課程的學(xué)生信息三、實(shí)驗(yàn)步驟及結(jié)果1、SQLServer2005服務(wù)管理器使用1Microsoft2005點(diǎn)擊Studio后,出現(xiàn)連接到服務(wù)器,點(diǎn)擊“連接”按鈕,啟動(dòng)SQLServer2005數(shù)據(jù)庫(kù)服務(wù)。2.在SQLServer2005中建立數(shù)據(jù)庫(kù):在對(duì)象資源管理器中選擇數(shù)據(jù)庫(kù)單擊右鍵,新建數(shù)據(jù)庫(kù)。在新建數(shù)據(jù)庫(kù)窗口中,數(shù)據(jù)庫(kù)名稱輸入數(shù)據(jù)庫(kù)的名稱。2、查詢分析器的使用在“文件”菜單中選擇新建--->使用當(dāng)前連接查詢,點(diǎn)擊使用當(dāng)前連接查詢后,出現(xiàn)新的工作區(qū)窗口,輸入sql語(yǔ)句。點(diǎn)擊執(zhí)行按鈕,出現(xiàn)查詢結(jié)果窗口。3、程序編寫與結(jié)果selectSname,Sno,'YearofBirth:',2014-SagefromStudentselectSdept,COUNT(Sdept)as總?cè)藬?shù)fromStudentgroupbySdeptorderbySdeptselectSno,Cno,GradefromScorewhereCno='002'orCno='003'selectTnamefromTeacher,ScorewhereTeacher.Cno=Score.CnogroupbyTnamehavingCOUNT(Score.Sno)>3
selectSname,Student.SdeptfromStudentwhereSnonotin(selectSnofromScore)selectSname,Cno,Grade最高分fromScorex,Studentwhere(Student.Sno=x.Sno)
andx.Gradein(selectMAX(Grade)fromScorewhereScore.Sno=x.SnogroupbySno)selectTnamefromTeacher
whereCnoin(selectCnofromCoursewhereCname='數(shù)據(jù)結(jié)構(gòu)')selectStudent.*fromStudent,Teacher,ScoreWhereStudent.Sno=Score.Sno
andTeacher.Cno=Score.CnoandTeacher.Tname='李正科'use111gocreatetableS1(Snovarchar(10),Snamevarchar(20),SDvarchar(50),SAint)insertintoS1selectSno,Sname,Sage,SsexfromStudentwhereSdept='CS'4、ER圖四、實(shí)驗(yàn)中的問(wèn)題及解決方法1、代碼編寫時(shí)我總是忘記用英文符號(hào),導(dǎo)致程序出現(xiàn)錯(cuò)誤。檢查之后改正。2、在使用select語(yǔ)句時(shí),沒(méi)有將列名明確,如將student.sno寫成sno導(dǎo)致錯(cuò)誤。在查過(guò)書上的資料后改正。五、實(shí)驗(yàn)總結(jié)通過(guò)本次實(shí)驗(yàn),我復(fù)習(xí)了SQL數(shù)據(jù)庫(kù)的用法,表,視圖等操作。通過(guò)題目,練習(xí)了對(duì)SQL查詢語(yǔ)句的編寫和調(diào)試,真正將書本上所學(xué)的知識(shí)利用到了實(shí)踐當(dāng)中。在實(shí)驗(yàn)中遇到了很多問(wèn)題,通過(guò)問(wèn)老師、看書查資料等方法得到了解決,為今后進(jìn)一步學(xué)習(xí)數(shù)據(jù)庫(kù)打下了基礎(chǔ)。實(shí)驗(yàn)二C/S結(jié)構(gòu)的數(shù)據(jù)庫(kù)編程一、實(shí)驗(yàn)?zāi)康?.學(xué)會(huì)配置ODBC數(shù)據(jù)源,熟悉使用ODBC進(jìn)行數(shù)據(jù)庫(kù)應(yīng)用程序的設(shè)計(jì),通過(guò)ODBC接口對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作。2.學(xué)會(huì)通過(guò)ADO訪問(wèn)數(shù)據(jù)庫(kù),熟悉使用ADO技術(shù)進(jìn)行數(shù)據(jù)庫(kù)應(yīng)用程序的設(shè)計(jì),通過(guò)ADO接口對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作。二、實(shí)驗(yàn)環(huán)境及要求數(shù)據(jù)庫(kù)實(shí)驗(yàn)要求如下環(huán)境,服務(wù)器端:Windows2000/xp)、Web服務(wù)器(IIS5.0)和ASP。客戶端:IE5.0、VB6.0。要求:通過(guò)一門編程工具(VS2005C#或.net)編寫訪問(wèn)數(shù)據(jù)庫(kù)的應(yīng)用程序,編程序設(shè)計(jì)良好的一個(gè)人機(jī)交互界面,列出實(shí)驗(yàn)一中的查詢,將語(yǔ)句嵌入VS2005中完成“實(shí)驗(yàn)一”中的10個(gè)數(shù)據(jù)庫(kù)查詢語(yǔ)句的結(jié)果顯示。也可選擇其他編程工具開發(fā)。三、實(shí)驗(yàn)步驟及結(jié)果1、建立ODBC數(shù)據(jù)源(1)在“控制面板”中的“管理工具”下雙擊“數(shù)據(jù)庫(kù)(C”圖標(biāo),打開“ODBC數(shù)據(jù)源管理器”,或者通過(guò):開始→設(shè)置→控制面板→管理工具→數(shù)據(jù)源ODBC。在“ODBC數(shù)據(jù)庫(kù)管理器”中可以選擇“用戶DSN”、“系統(tǒng)DSN”、“文件DSN”。(2選擇“系統(tǒng)DSN”選項(xiàng)卡,單擊“添加”按鈕。彈出“創(chuàng)建新數(shù)據(jù)源”對(duì)話框。(3)選擇驅(qū)動(dòng)程序,單擊“完成”按鈕。彈出“創(chuàng)建到的新數(shù)據(jù)源”。(4)單擊“下一步”,出現(xiàn)選擇數(shù)據(jù)庫(kù)服務(wù)器對(duì)登錄XX的身份驗(yàn)證方式的對(duì)話框,可以選擇身份驗(yàn)證或SQLServer身份驗(yàn)證。單擊“下一步”,在“更改默認(rèn)的數(shù)據(jù)庫(kù)為”下拉列表框中選擇“sales”。(5)單擊“下一步”,彈出對(duì)話框,單擊“完成”按鈕,彈出對(duì)話框,完成數(shù)據(jù)源的配置。(6)單擊“完成”。即可進(jìn)行測(cè)試數(shù)據(jù)源,若系統(tǒng)提示測(cè)試成功,則表示設(shè)置正確。單擊“確定”,即完成系統(tǒng)DSN的建立。2、開發(fā)環(huán)境中連接數(shù)據(jù)庫(kù)(1)啟動(dòng)SQLServer2005后,單擊“文件”菜單,選擇“新建”,“項(xiàng)目”。(2)VisualC#---〉Windows應(yīng)用程序---〉確定,會(huì)自動(dòng)生成窗體Form1(3)工具箱---〉數(shù)據(jù)---〉DataGridView拖入Form1(4)在此控件上單擊右鍵—屬性—>DataSource(5)點(diǎn)擊此屬性值下箭頭-->添加項(xiàng)目數(shù)據(jù)源(6)點(diǎn)擊數(shù)據(jù)庫(kù)-->下一步-->新建連接,彈出添加連接窗口,將SQLserver2005的服務(wù)器名稱復(fù)制。粘貼到添加連接窗體中的服務(wù)器名中,點(diǎn)擊下拉菜單選擇數(shù)據(jù)庫(kù)。定”,生成連接。點(diǎn)“下一步”再點(diǎn)“下一步”選擇表,點(diǎn)擊完成。運(yùn)行程序。3、通過(guò)連接字符串連接數(shù)據(jù)庫(kù)添加兩個(gè)控件richTextBox1和button1。上邊通過(guò)控件已經(jīng)生成過(guò)連接字符串,可以復(fù)制4、程序編寫與結(jié)果privatevoidForm1_Load(objectsender,EventArgse){//TODO:這行代碼將數(shù)據(jù)加載到表sCDBDataSet3.Teacherthis.teacherTableAdapter.Fill(this.sCDBDataSet3.Teacher);//TODO:這行代碼將數(shù)據(jù)加載到表sCDBDataSet1.student1this.student1TableAdapter.Fill(this.sCDBDataSet1.student1);}privatevoidbutton3_Click(objectsender,EventArgse){stringConStr="DataSource=911-57;InitialCatalog=scdb;IntegratedSecurity=True";//連接字符串SqlConnectionconn=newSqlConnection(ConStr);//建立一個(gè)數(shù)據(jù)庫(kù)連接實(shí)例conn.Open();//打開數(shù)據(jù)庫(kù)連接=new//用于執(zhí)行SQL語(yǔ)句cmd.Connection=conn;cmdmandText="selectSno,cno,gradefromScorewhere(So='002'orcno='003')";cmdmandType=SqlDataReadersdr=cmd.ExecuteReader();//執(zhí)行richTextBox1.Text="";while(sdr.Read())//每次讀一條記錄讀完停止{richTextBox1.Text+=sdr.GetString(0)+""+sdr.GetString(1)+""+sdr.GetInt32(2)+"\n";//讀出的的字符串賦值給控件}conn.Dispose();//銷毀連接}privatevoiddataGridView1_CellContentClick(objectsender,DataGridViewCellEventArgse){}privatevoidrichTextBox1_TextChanged(objectsender,EventArgse){}privatevoidbutton1_Click(objectsender,EventArgse){stringConStr="DataSource=911-57;InitialCatalog=scdb;IntegratedSecurity=True";//連接字符串SqlConnectionconn=newSqlConnection(ConStr);//建立一個(gè)數(shù)據(jù)庫(kù)連接實(shí)例conn.Open();//打開數(shù)據(jù)庫(kù)連接=new//用于執(zhí)行SQL語(yǔ)句cmd.Connection=conn;cmdmandText="selectSno,Sname,2014-Sagefromstudent1";cmdmandType=SqlDataReadersdr=cmd.ExecuteReader();//執(zhí)行richTextBox1.Text="";while(sdr.Read())//每次讀一條記錄讀完停止{richTextBox1.Text+=sdr.GetString(0)+""+sdr.GetString(1)+""+sdr.GetInt32(2)+"\n";//讀出的的字符串賦值給控件}conn.Dispose();//銷毀連接}privatevoidbutton2_Click(objectsender,EventArgse){stringConStr="DataSource=911-57;InitialCatalog=scdb;IntegratedSecurity=True";//連接字符串SqlConnectionconn=newSqlConnection(ConStr);//建立一個(gè)數(shù)據(jù)庫(kù)連接實(shí)例conn.Open();//打開數(shù)據(jù)庫(kù)連接=new//用于執(zhí)行SQL語(yǔ)句cmd.Connection=conn;cmdmandText="selectcount(Sdept)fromstudent1groupbysdept";cmdmandType=SqlDataReadersdr=cmd.ExecuteReader();//執(zhí)行richTextBox1.Text="";while(sdr.Read())//每次讀一條記錄讀完停止{richTextBox1.Text+=sdr.GetInt32(0)+"\n";//讀出的的字符串賦值給控件}conn.Dispose();//銷毀連接}privatevoidbutton4_Click(objectsender,EventArgse){stringConStr="DataSource=911-57;InitialCatalog=scdb;IntegratedSecurity=True";//連接字符串SqlConnectionconn=newSqlConnection(ConStr);//建立一個(gè)數(shù)據(jù)庫(kù)連接實(shí)例conn.Open();//打開數(shù)據(jù)庫(kù)連接=new//用于執(zhí)行SQL語(yǔ)句cmd.Connection=conn;cmdmandText="selectTnamefromTeacher,ScorewhereSo=TogroupbyTnamehavingcount(So)>3";cmdmandType=SqlDataReadersdr=cmd.ExecuteReader();//執(zhí)行richTextBox1.Text="";while(sdr.Read())//每次讀一條記錄讀完停止{richTextBox1.Text+=sdr.GetString(0)+"\n";//讀出的的字符串賦值給控件}conn.Dispose();//銷毀連接}privatevoidbutton5_Click(objectsender,EventArgse){stringConStr="DataSource=911-57;InitialCatalog=scdb;IntegratedSecurity=True";//連接字符串SqlConnectionconn=newSqlConnection(ConStr);//建立一個(gè)數(shù)據(jù)庫(kù)連接實(shí)例conn.Open();//打開數(shù)據(jù)庫(kù)連接=new//用于執(zhí)行SQL語(yǔ)句cmd.Connection=conn;cmdmandText="selectSname,student1.Sdeptfromstudent1whereSnonotin(selectSnofromScore)";cmdmandType=SqlDataReadersdr=cmd.ExecuteReader();//執(zhí)行richTextBox1.Text="";while(sdr.Read())//每次讀一條記錄讀完停止{richTextBox1.Text+=sdr.GetString(0)+""+sdr.GetString(1)+"\n";//讀出的的字符串賦值給控件}conn.Dispose();//銷毀連接}privatevoidbutton6_Click(objectsender,EventArgse){stringConStr="DataSource=911-57;InitialCatalog=scdb;IntegratedSecurity=True";//連接字符串SqlConnectionconn=newSqlConnection(ConStr);//建立一個(gè)數(shù)據(jù)庫(kù)連接實(shí)例conn.Open();//打開數(shù)據(jù)庫(kù)連接=new//用于執(zhí)行SQL語(yǔ)句cmd.Connection=conn;cmdmandText="selectSname,Cno,GradefromScoreScore,Student1where(Student.Sno=Score.Sno)andScore.Gradein(selectMAX(Grade)fromScorewhereScore.Sno=Score.SnogroupbySno)";cmdmandType=SqlDataReadersdr=cmd.ExecuteReader();//執(zhí)行richTextBox1.Text="";while(sdr.Read())//每次讀一條記錄讀完停止{richTextBox1.Text+=sdr.GetString(0)+""+sdr.GetString(1)+""+sdr.GetInt32(2)+"\n";//讀出的的字符串賦值給控件}conn.Dispose();//銷毀連接}}}四、實(shí)驗(yàn)中的問(wèn)題及解決方法1、代碼編寫時(shí)我總是忘記用英文符號(hào),導(dǎo)致程序出現(xiàn)錯(cuò)誤。檢查之后改正。2、在編寫按鈕的程序時(shí)應(yīng)先打開form,左鍵雙擊需編寫的按鈕,在指定位置處編寫。3、在更換電腦后,程序中的計(jì)算機(jī)號(hào)需改正。4、sdr.GetString語(yǔ)句應(yīng)與調(diào)出的屬性數(shù)量一致。五、實(shí)驗(yàn)總結(jié)通過(guò)本次實(shí)驗(yàn),我學(xué)會(huì)了配置ODBC通過(guò)ODBC接口對(duì)數(shù)據(jù)庫(kù)進(jìn)行了操作。在實(shí)驗(yàn)中遇到了很多問(wèn)題,通過(guò)問(wèn)老師、看書查資料等方法得到了解決,為今后進(jìn)一步學(xué)習(xí)數(shù)據(jù)庫(kù)打下了基礎(chǔ)。實(shí)驗(yàn)三數(shù)據(jù)庫(kù)的建立及數(shù)據(jù)維護(hù)一、實(shí)驗(yàn)?zāi)康?、學(xué)會(huì)通過(guò)IIS配置Web服務(wù)器,建立虛擬目錄
2、學(xué)會(huì)在IE瀏覽器中查看ASP.NET網(wǎng)頁(yè)的執(zhí)行結(jié)果3、掌握ASP.NET技術(shù)實(shí)現(xiàn)簡(jiǎn)單的動(dòng)態(tài)網(wǎng)頁(yè)的制作。二、實(shí)驗(yàn)環(huán)境及要求1.實(shí)驗(yàn)環(huán)境:Windows7,SQLServer2008,VisualStudio2010。2.實(shí)驗(yàn)要求:設(shè)計(jì)網(wǎng)頁(yè),顯示“實(shí)驗(yàn)一”中11個(gè)查詢的結(jié)果。三、實(shí)驗(yàn)步驟及結(jié)果1、實(shí)驗(yàn)步驟1)在MicrosoftVisualStudio2008(以下簡(jiǎn)稱VS2008)中添加一個(gè)b用
程序項(xiàng)目,名稱為scdb;2)在scdb項(xiàng)目上點(diǎn)擊右鍵->添加->新建項(xiàng);3)選擇web窗體,名稱Query_Result_1.aspx;點(diǎn)擊添加;4)生成一個(gè)頁(yè)面,點(diǎn)擊頁(yè)面下方的“設(shè)計(jì)”按鈕,跳轉(zhuǎn)到設(shè)計(jì)頁(yè)面;5)點(diǎn)擊左側(cè)的“工具箱”,選擇“數(shù)據(jù)”中“GridView”拖拽到右側(cè)的設(shè)計(jì)頁(yè)面中;6)點(diǎn)擊GridView任務(wù)中“選擇數(shù)據(jù)源”下拉框,選擇“新建數(shù)據(jù)源”,在選擇“數(shù)據(jù)庫(kù)”,為數(shù)據(jù)源指定ID為SqlDataSourcescdb,點(diǎn)擊“確定”;7)點(diǎn)擊“新建連接”,彈出窗口,服務(wù)器名稱:(lo
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 商標(biāo)權(quán)知識(shí)產(chǎn)權(quán)轉(zhuǎn)讓合同
- 債權(quán)轉(zhuǎn)讓合同范例
- 戶外廣告合同樣本格式模板
- 二手車輛買賣協(xié)議范本
- 2024年接送服務(wù)合同標(biāo)準(zhǔn)范本
- 股份協(xié)議書合同股份協(xié)議書2024年
- 房屋買賣代理合同范文
- 2024年離婚協(xié)議書官方范本
- 2024年購(gòu)買香蕉的買賣合同范本
- 2024年居間公司股份轉(zhuǎn)讓合同
- MES運(yùn)行管理辦法
- 地層編號(hào)原則
- 廠區(qū)吸煙管理規(guī)定(共2頁(yè))
- 東營(yíng)市初中學(xué)科教研基地建設(shè)實(shí)施方案
- 施耐德XB2-BE系列按鈕指示燈選型手冊(cè)
- 第9講PID算法ppt課件
- 起重機(jī)械租賃公司管理制度匯編
- 拋光標(biāo)準(zhǔn) 50
- 淺析醫(yī)藥行業(yè)供應(yīng)鏈融資
- 醫(yī)院患兒發(fā)生跌倒墜床應(yīng)急預(yù)案演練腳本
- 人教版七年級(jí)上冊(cè)生物第一單元《生物的特征》說(shuō)課稿(共4頁(yè))
評(píng)論
0/150
提交評(píng)論