《2022年北方工业大学-数据库实验报告.docx》由会员分享,可在线阅读,更多相关《2022年北方工业大学-数据库实验报告.docx(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数据库技术 I2021 年秋序号:数据库技术 I 试验报告系别: 班级:学号:成果: 评语:指导老师签字:日期:学习文档 仅供参考试验一 数据库的建立及数据保护一、 试验目的1. 学会使用企业治理器和查询分析器创建数据库、创建基本表和查看数据库属性;2. 学会使用企业治理器和查询分析器向数据库输入数据,修改数据,删除数据的操作;3. 在 SOL Server 查询分析器中完成复杂查询及视图定义;二、 试验环境及要求数据库试验要求如下环境,服务器端:Windows 2000/xp 、数据库服务器 SQL Server 2005 、Web服务器 IIS 5.0和 ASP;客户端: IE5.0 、;
2、要求:1、 依据以上数据字典,画出该数据库的ER图,完成数据库的概念结构设计;2、 将 ER图转换成规律关系模式,判定规律数据库模式中的各个关系表是第几范式,假如没有到达第三范式或BC范式,请进行标准化;完成数据库的规律结构设计;3、 通过企业治理器或者查询分析器实现关系模式的储备, 包括确定主码、外部码等;4、 通过企业治理器或查询分析器向数据库中输入数据;5、 打开数据库 SQLServer 2005 的查询分析器,用 SQL语言完成以下语句;并通过试验结果验证查询语言的正确性,将每个SQL语言及结果存盘,以备老师检查;(1) 求全体同学的学号、和诞生年份;(2) 求每个系的同学总人数并按
3、降序排列;(3) 求选修了课程号为 002 或 003 的同学的学号、课程名和成果;(4) 检索选修某课程的同学人数多于3 人的老师;(5) 查询全部未选课程的同学和所在系;(6) 求每个同学的课程成果的最高分, 查询结果项包括: 同学、课程号及最高分;(7) 求全部讲授数据结构课程的老师(8) 查询全部选修了李正科老师的课程的同学信息三、 试验步骤及结果1、SQL Server 2005 服务治理器使用1. 启动数据库服务软件 SQLServer 2005:在程序菜单中挑选 MicrosoftSQLServer 2005点击 Studio后,显现连接到服务器,点击“连接”按钮,启动SQL S
4、erver 2005 数据库服务;2. 在 SQL Server 2005 中建立数据库:在对象资源治理器中挑选数据库单击右键,新建数据库;在新建数据库窗口中,数据库名称输入数据库的名称;2、查询分析器的使用在“文件”菜单中挑选新建 - 使用当前连接查询,点击使用当前连接查询后,显现新的工作区窗口,输入sql 语句;点击执行按钮,显现查询结果窗口;3、程序编写与结果select Sname ,Sno,Year of Birth:,2021-Sage from Student select Sdept,COUNTSdept as总人数from Studentgroup by Sdept orde
5、r by Sdeptselect Sno,Cno,Grade from Scorewhere Cno=002or Cno=003 select Tnamefrom Teacher,Scorewhere Teacher o=Score o group by Tnamehaving COUNTScore.Sno3from Student where Sno not inselect Sno from Scoreselect Sname,Cno,Grade最高分from Score x,Student whereStudent.Sno=x.Snoand x.Grade in select MAXGr
6、ade from Scoregroup by Sno select Tname from Teacher where Cno in select Cno from Coursewhere Cname=数据结构 select Student.*from Student,Teacher,Scoreand Teacher o=Score oand Teacher.Tname= 李正科use 111 gocreate table S1Sno varchar10, Sname varchar20, SD varchar50,SA intinsert into S1select Sno,Sname,Sag
7、e,Ssex from Studentwhere Sdept=CS4、ER图四、 试验中的问题及解决方法1、代码编写时我总是遗忘用英文符号,导致程序显现错误;检查之后改正;2、在使用 select语句时,没有将列名明确,如将 student.sno写成 sno 导致错误;在查过书上的资料后改正;五、 试验总结通过本次试验,我复习了SQL 数据库的用法,表,视图等操作;通过题目,练习了对 SQL 查询语句的编写和调试,真正将书本上所学的学问利用到了实践当中;在试验中遇到了许多问题,通过问老师、看书查资料等方法得到明白决,为今后进一步学习数据 库打下了基础;一、试验目的试验二 C/S 结构的数据库
8、编程1. 学会配置 ODBC数据源,熟识使用 ODBC进行数据库应用程序的设计,通过ODBC接口对数据库进行操作;2. 学会通过 ADO拜访数据库,熟识使用 ADO技术进行数据库应用程序的设计,通过ADO接口对数据库进行操作;二、试验环境及要求数据库试验要求如下环境, 服务器端:Windows2000/xp 、数据库服务器SQLServer 2005、Web服务器 IIS 5.0和 ASP;客户端: IE5.0 、;要求:通过一门编程工具 VS2005 C#或.net 编写拜访数据库的应用程序,编程序设计良好的一个人机交互界面,列出试验一中的查询,将SQL语句嵌入 VS2005 中完成“试验一
9、”中的 10 个数据库查询语句的结果显示;也可挑选其他编程工具开发;三、试验步骤及结果1、建立 ODBC数据源1在“掌握面板”中的“治理工具”下双击“数据库 ODBC ”图标,打开“ ODBC 数据源治理器”,或者通过:开头设置掌握面板治理工具数据源 ODB;C 在“ ODBC 数据库治理器”中可以挑选“用户 DSN” 、“系统 DSN”、“文件 DSN”;2假如要添加一个新的数据源可以单击“添加”按钮,挑选“系统 DSN”选项卡, 单击“添加”按钮;弹出“创建新数据源”对话框;3挑选驱动程序 SQLServer ,单击“完成”按钮;弹出“创建到SQLServer 的新数据源”;4单击“下一步
10、”,显现挑选 SQLServer 数据库服务器对登录帐户的身份验证方式的对话框,可以挑选 Window身份验证或 SQL Server 身份验证; 单击“下一步”,在“更换默认的数据库为”下拉列表框中挑选“sales ”;5单击“下一步”,弹出对话框,单击“完成”按钮,弹出对话框,完成数据源的配置;6单击“完成”;即可进行测试数据源,假设系统提示测试胜利,就表示DSN设置正确;单击“确定”,即完成系统DSN的建立;2、VS2005开发环境中连接数据库1启动 SQL Server 2005 后,单击“文件”菜单,挑选“新建”,“项目”;2Visual C#-Windows 应用程序 - 确定 ,
11、会自动生成窗体 Form13工具箱 - 数据 - DataGridView拖入 Form14在此控件上单击右键 属性 DataSource5点击此属性值下箭头 - 添加项目数据源6点击数据库 - 下一步 - 新建连接 ,弹出添加连接窗口,将 SQLserver2005 的服务器名称复制;粘贴到添加连接窗体中的服务器名中,点击下拉菜单项挑选择数据库;点击“确定”,生成连接;点“下一步”再点“下一步”挑选表,点击完成;运行程序;3、通过连接字符串连接数据库添加两个控件 richTextBox1和 button1 ;上边通过控件已经生成过连接字符串,可以复制4、程序编写与结果privatevoid
12、Form1_Load objectsender,EventArgs e/ TODO:这行代码将数据加载到表“中”;您可以依据需要移动或移除它;this .teacherTableAdapter.Fillthis .sCDBDataSet3.Teacher;/ TODO:这行代码将数据加载到表“中”;您可以依据需要移动或移除它;this .student1TableAdapter.Fillthis .sCDBDataSet1.student1;字符串privatevoid button3_Clickobjectsender,EventArgs estringConStr =Data Source
13、=911-57;Initial Catalog=scdb;Integrated Security=True;/ 连接SqlConnectionconn =new SqlConnection ConStr;/ 建立一个数据库连接实例conn.Open;/ 打开数据库连接SqlCommandcmd =new SqlCommand;/ 用于执行 SQL语句 cmd.Connection = conn;cmd.CommandText =select Sno,cno,grade from Score where Score o=002or cno=003; cmd.CommandType =Comman
14、dTyp.eText;SqlDataReader sdr = cmd.ExecuteReader;/ 执行richTextBox1.Text = ;whilesdr.Read/ 每次读一条记录读完停止richTextBox1.Text+= sdr.GetString0+ + sdr.GetString1+ + sdr.GetInt322+ n ;/ 读出的的字符串赋值给控件conn.Dispose;/ 销毁连接privatevoid dataGridView1_CellContentClickobjectsender,DataGridViewCellEventArgseprivatevoid
15、richTextBox1_TextChangedobjectsender,EventArgs e字符串privatevoid button1_Clickobjectsender,EventArgs estringConStr =Data Source=911-57;Initial Catalog=scdb;Integrated Security=True;/ 连接SqlConnectionconn =new SqlConnection ConStr;/ 建立一个数据库连接实例conn.Open;/ 打开数据库连接SqlCommandcmd =new SqlCommand;/ 用于执行 SQL语
16、句 cmd.Connection = conn;cmd.CommandText =select Sno,Sname,2021-Sage from student1; cmd.CommandType =CommandTyp.eText;SqlDataReader sdr = cmd.ExecuteReader;/ 执行richTextBox1.Text = ;whilesdr.Read/ 每次读一条记录读完停止richTextBox1.Text+= sdr.GetString0+ + sdr.GetString1 + + sdr.GetInt322+n ;/ 读出的的字符串赋值给控件conn.D
17、ispose;/ 销毁连接字符串privatevoid button2_Clickobjectsender,EventArgs estringConStr =Data Source=911-57;Initial Catalog=scdb;Integrated Security=True;/ 连接SqlConnectionconn =new SqlConnection ConStr;/ 建立一个数据库连接实例conn.Open;/ 打开数据库连接SqlCommandcmd =new SqlCommand;/ 用于执行 SQL语句cmd.Connection = conn;cmd.CommandT
18、ext =select countSdeptfrom student1 group by sdept; cmd.CommandType =CommandTyp.eText;SqlDataReader sdr = cmd.ExecuteReader;/ 执行richTextBox1.Text = ;whilesdr.Read/ 每次读一条记录读完停止richTextBox1.Text += sdr.GetInt320+n ;/ 读出的的字符串赋值给控件conn.Dispose;/ 销毁连接字符串privatevoid button4_Clickobjectsender,EventArgs est
19、ringConStr =Data Source=911-57;Initial Catalog=scdb;Integrated Security=True;/ 连接SqlConnectionconn =new SqlConnection ConStr;/ 建立一个数据库连接实例conn.Open;/ 打开数据库连接SqlCommandcmd =new SqlCommand;/ 用于执行 SQL语句 cmd.Connection = conn;cmd.CommandText =select Tname from Teacher,Score where Score o=Teacher o group
20、 by Tname havingcountScore o3;cmd.CommandType =CommandTyp.eText;SqlDataReader sdr = cmd.ExecuteReader;/ 执行richTextBox1.Text = ;whilesdr.Read/ 每次读一条记录读完停止richTextBox1.Text += sdr.GetString0 +n ;/ 读出的的字符串赋值给控件conn.Dispose;/ 销毁连接字符串privatevoid button5_Clickobjectsender,EventArgs estringConStr =Data Sou
21、rce=911-57;Initial Catalog=scdb;Integrated Security=True;/ 连接SqlConnectionconn =new SqlConnection ConStr;/ 建立一个数据库连接实例conn.Open;/ 打开数据库连接SqlCommandcmd =new SqlCommand;/ 用于执行 SQL语句cmd.Connection = conn;cmd.CommandText =select Sname,student1.Sdept from student1 where Sno not in select Sno from Score ;
22、cmd.CommandType =CommandTyp.eText;SqlDataReader sdr = cmd.ExecuteReader;/ 执行richTextBox1.Text = ;whilesdr.Read/ 每次读一条记录读完停止richTextBox1.Text += sdr.GetString0 + + sdr.GetString1 +n ;/ 读出的的字符串赋值给控件conn.Dispose;/ 销毁连接字符串privatevoid button6_Clickobjectsender,EventArgs estringConStr =Data Source=911-57;
23、Initial Catalog=scdb;Integrated Security=True;/ 连接SqlConnectionconn =new SqlConnection ConStr;/ 建立一个数据库连接实例conn.Open;/ 打开数据库连接SqlCommandcmd =new SqlCommand;/ 用于执行 SQL语句 cmd.Connection = conn;cmd.CommandText= selectSname,Cno,Grade from Score Score,Student1where Student.Sno=Score.Snoand Score.Grade in
24、 select MAXGrade from Score where Score.Sno=Score.Sno group by Sno; cmd.CommandType =CommandTyp.eText;SqlDataReader sdr = cmd.ExecuteReader;/ 执行richTextBox1.Text = ;whilesdr.Read/ 每次读一条记录读完停止richTextBox1.Text += sdr.GetString0 + + sdr.GetString1 + + sdr.GetInt322 +n ;/ 读出的的字符串赋值给控件conn.Dispose;/ 销毁连
25、接四、试验中的问题及解决方法1、代码编写时我总是遗忘用英文符号,导致程序显现错误;检查之后改正;2、在编写按钮的程序时应先打开form,左键双击需编写的按钮,在指定位置处编写;3、在更换电脑后,程序中的电脑号需改正;4、语句应与调出的属性数量一样;五、试验总结通过本次试验,我学会了配置 ODBC 数据源,并用其进行了数据库应用程序的设计, 通过 ODBC 接口对数据库进行了操作;在试验中遇到了许多问题,通过问老师、看书查资料等方法得到明白决,为今后进一步学习数据库打下了基础;试验三 数据库的建立及数据保护一、试验目的1、学会通过 IIS 配置 Web服务器,建立虚拟目录2、3、把握 ASP.N
26、ET技术实现简洁的动态网页的制作;二、试验环境及要求1. 试验环境: Windows7,SQLServer2021,Visual Studio 2021;2. 试验要求:设计网页,显示“试验一”中11 个查询的结果;三、试验步骤及结果1、试验步骤1) 在 Microsoft Visual Studio 2021以下简称 VS2021中添加一个 ASP.NETWe应b 用程序项目,名称为 scdb;2) 在 scdb 项目上点击右键 - 添加- 新建项;3) 挑选 web窗体,名称 Query_Result_1.aspx ;点击添加;4) 生成一个页面,点击页面下方的“设计”按钮,跳转到设计页面
27、;5点击左侧的“工具箱”,挑选“数据”中“GridView ”拖拽到右侧的设计页面中;6点击 GridView 任务中“挑选数据源”下拉框,挑选“新建数据源”,在挑选“数据库”,为数据源指定ID 为 SqlDataSourcescdb ,点击“确定”;7点击“新建连接”,弹出链接窗口,服务器名称:local,在挑选数据库与名中,挑选自己建立的数据库名,“ scdb”;再点击“测试连接”,弹出“测试连接胜利”,即连接数据库胜利,点击“确定”;8在下拉框中挑选“ scdbConnectionString”,点击“下一步”;9在“期望如何从数据库中检索”挑选“指定自定义SQL或储备语句”,点击“下一
28、步”,在 SELECT标签下,点击“查询生成器”,点击“ Student ”,点击“添加”,点击“关闭”,关闭“添加表”对话框;10在查询生成器,挑选 Sno,Sname两列,然后添加表达式 2021 Sage,点击“执行查询”,生成器底部会产生查询结果,然后点击“确定”;11点击“下一步”12点击“测试查询”就显现查询结果,即查询数据胜利,然后点击“完成”终止;13点击“ GridView 任务”中的“编辑列”,会显现编辑框;14在“选定的字段”中点击“ Sno”显现 Sno属性框,在“外观”中的“ HeaderText ” 后面的编辑框中将“ Sno”改为“学号”;15“ Sname”与“
29、 Expr1”的列名修改操作与“ Sno”的相同,点击“确定”终止;16在“ GridView 任务”中的“自动套用格式”中挑选自己喜爱的界面风格;17点击“源”,切换源代码页面,修改无标题页面 中的标题为“查询 1 结果”;18右键单击“解决方案”中的“ Query_Result_1.aspx ”,挑选“在浏览器中查看”;四、试验中的问题及解决方法1、配置 IIS 的问题,需要选中全部IIS 组件,然后新建虚拟目录配置网站;2、由于对程序的不熟识,导致试验没能在规定时间内做完;五、试验总结通过本次试验,我学会了配置 IIS 并建立虚拟目录,明白了关于的一些相关学问,使用 Visual Studio 进行编写,虽然最终没能完成,但我懂得了如何在IE 上执行自己编写的网页,实现简洁的动态网页制作与数据库在网页上的显示功能;此次试验使我收益匪浅;