北方工业大学数据库实验报告.docx

上传人:b****6 文档编号:8764728 上传时间:2023-05-14 格式:DOCX 页数:18 大小:374.59KB
下载 相关 举报
北方工业大学数据库实验报告.docx_第1页
第1页 / 共18页
北方工业大学数据库实验报告.docx_第2页
第2页 / 共18页
北方工业大学数据库实验报告.docx_第3页
第3页 / 共18页
北方工业大学数据库实验报告.docx_第4页
第4页 / 共18页
北方工业大学数据库实验报告.docx_第5页
第5页 / 共18页
北方工业大学数据库实验报告.docx_第6页
第6页 / 共18页
北方工业大学数据库实验报告.docx_第7页
第7页 / 共18页
北方工业大学数据库实验报告.docx_第8页
第8页 / 共18页
北方工业大学数据库实验报告.docx_第9页
第9页 / 共18页
北方工业大学数据库实验报告.docx_第10页
第10页 / 共18页
北方工业大学数据库实验报告.docx_第11页
第11页 / 共18页
北方工业大学数据库实验报告.docx_第12页
第12页 / 共18页
北方工业大学数据库实验报告.docx_第13页
第13页 / 共18页
北方工业大学数据库实验报告.docx_第14页
第14页 / 共18页
北方工业大学数据库实验报告.docx_第15页
第15页 / 共18页
北方工业大学数据库实验报告.docx_第16页
第16页 / 共18页
北方工业大学数据库实验报告.docx_第17页
第17页 / 共18页
北方工业大学数据库实验报告.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

北方工业大学数据库实验报告.docx

《北方工业大学数据库实验报告.docx》由会员分享,可在线阅读,更多相关《北方工业大学数据库实验报告.docx(18页珍藏版)》请在冰点文库上搜索。

北方工业大学数据库实验报告.docx

北方工业大学数据库实验报告

数据库技术I(2010年秋)

序号:

 

数据库技术I实验报告

 

系别:

班级:

学号:

成绩:

评语:

 

指导教师签字:

日期:

 

实验一数据库的建立及数据维护

一、实验目的

1.学会使用企业管理器和查询分析器创建数据库、创建基本表和查看数据库属性。

2.学会使用企业管理器和查询分析器向数据库输入数据,修改数据,删除数据的操作。

3.在SOLServer查询分析器中完成复杂查询及视图定义。

二、实验环境及要求

数据库实验要求如下环境,服务器端:

Windows2000/xp、数据库服务器〔SQLServer2005〕、Web服务器〔IIS5.0〕和ASP。

客户端:

IE5.0、。

要求:

1、根据以上数据字典,画出该数据库的ER图,完成数据库的概念结构设计;

2、将ER图转换成逻辑关系模式,判断逻辑数据库模式中的各个关系〔表〕是第几范式,如果没有到达第三范式或BC范式,请进行标准化。

完成数据库的逻辑结构设计。

3、通过企业管理器或者查询分析器实现关系模式的存储,包括确定主码、外部码等。

4、通过企业管理器或查询分析器向数据库中输入数据。

5、打开数据库SQLServer2005的查询分析器,用SQL语言完成以下语句。

并通过实验结果验证查询语言的正确性,将每个SQL语言及结果存盘,以备老师检查。

(1)求全体学生的学号、和出生年份。

(2)求每个系的学生总人数并按降序排列。

(3)求选修了课程号为002或003的学生的学号、课程名和成绩。

(4)检索选修某课程的学生人数多于3人的教师。

(5)查询所有未选课程的学生和所在系。

(6)求每个同学的课程成绩的最高分,查询结果项包括:

学生、课程号及最高分。

(7)求所有讲授数据结构课程的教师

(8)查询所有选修了李正科老师的课程的学生信息

三、实验步骤及结果

1、SQLServer2005服务管理器使用

1.启动数据库服务软件SQLServer2005:

在程序菜单中选择MicrosoftSQLServer2005

点击Studio后,出现连接到服务器,点击“连接”按钮,启动SQLServer2005数据库服务。

2.在SQLServer2005中建立数据库:

在对象资源管理器中选择数据库单击右键,新建数据库。

在新建数据库窗口中,数据库名称输入数据库的名称。

2、查询分析器的使用

在“文件”菜单中选择新建--->使用当前连接查询,点击使用当前连接查询后,出现新的工作区窗口,输入sql语句。

点击执行按钮,出现查询结果窗口。

3、程序编写与结果

selectSname,Sno,'YearofBirth:

',2014-SagefromStudent

selectSdept,COUNT(Sdept)as总人数

fromStudent

groupbySdept

orderbySdept

selectSno,Cno,Grade

fromScore

whereCno='002'orCno='003'

selectTname

fromTeacher,Score

whereTeachero=Scoreo

groupbyTname

havingCOUNT(Score.Sno)>3

fromStudent

whereSnonotin

(selectSnofromScore)

selectSname,Cno,Grade最高分

fromScorex,Student

where(Student.Sno=x.Sno)

andx.Gradein

(selectMAX(Grade)

fromScore

groupbySno)

selectTname

fromTeacher

whereCnoin

(selectCno

fromCourse

whereCname='数据结构')

selectStudent.*

fromStudent,Teacher,Score

andTeachero=Scoreo

andTeacher.Tname='李正科'

use111

go

createtableS1

(Snovarchar(10),

Snamevarchar(20),

SDvarchar(50),

SAint)

insertintoS1

selectSno,Sname,Sage,Ssex

fromStudent

whereSdept='CS'

4、ER图

 

四、实验中的问题及解决方法

1、代码编写时我总是忘记用英文符号,导致程序出现错误。

检查之后改正。

2、在使用select语句时,没有将列名明确,如将student.sno写成sno导致错误。

在查过书上的资料后改正。

五、实验总结

通过本次实验,我复习了SQL数据库的用法,表,视图等操作。

通过题目,练习了对SQL查询语句的编写和调试,真正将书本上所学的知识利用到了实践当中。

在实验中遇到了很多问题,通过问老师、看书查资料等方法得到了解决,为今后进一步学习数据库打下了基础。

 

实验二C/S结构的数据库编程

一、实验目的

1.学会配置ODBC数据源,熟悉使用ODBC进行数据库应用程序的设计,通过ODBC接口对数据库进行操作。

2.学会通过ADO访问数据库,熟悉使用ADO技术进行数据库应用程序的设计,通过ADO接口对数据库进行操作。

二、实验环境及要求

数据库实验要求如下环境,服务器端:

Windows2000/xp、数据库服务器〔SQLServer2005〕、Web服务器〔IIS5.0〕和ASP。

客户端:

IE5.0、。

要求:

通过一门编程工具〔VS2005C#或.net〕编写访问数据库的应用程序,编程序设计良好的一个人机交互界面,列出实验一中的查询,将SQL语句嵌入VS2005中完成“实验一”中的10个数据库查询语句的结果显示。

也可选择其他编程工具开发。

三、实验步骤及结果

1、建立ODBC数据源

〔1〕在“控制面板”中的“管理工具”下双击“数据库〔ODBC〕”图标,打开“ODBC数据源管理器”,或者通过:

开始→设置→控制面板→管理工具→数据源ODBC。

在“ODBC数据库管理器”中可以选择“用户DSN”、“系统DSN”、“文件DSN”。

〔2〕如果要添加一个新的数据源可以单击“添加”按钮,选择“系统DSN”选项卡,单击“添加”按钮。

弹出“创建新数据源”对话框。

〔3〕选择驱动程序SQLServer,单击“完成”按钮。

弹出“创建到SQLServer的新数据源”。

〔4〕单击“下一步”,出现选择SQLServer数据库服务器对登录帐户的身份验证方式的对话框,可以选择Window身份验证或SQLServer身份验证。

单击“下一步”,在“更改默认的数据库为”下拉列表框中选择“sales”。

〔5〕单击“下一步”,弹出对话框,单击“完成”按钮,弹出对话框,完成数据源的配置。

〔6〕单击“完成”。

即可进行测试数据源,假设系统提示测试成功,则表示DSN设置正确。

单击“确定”,即完成系统DSN的建立。

2、VS2005开发环境中连接数据库

〔1〕启动SQLServer2005后,单击“文件”菜单,选择“新建”,“项目”。

〔2〕VisualC#---〉Windows应用程序---〉确定,会自动生成窗体Form1

〔3〕工具箱---〉数据---〉DataGridView拖入Form1

〔4〕在此控件上单击右键—>属性—>DataSource

〔5〕点击此属性值下箭头-->添加项目数据源

〔6〕点击数据库-->下一步-->新建连接,弹出添加连接窗口,将SQLserver2005的服务器名称复制。

粘贴到添加连接窗体中的服务器名中,点击下拉菜单项选择择数据库。

点击“确定”,生成连接。

点“下一步”再点“下一步”选择表,点击完成。

运行程序。

3、通过连接字符串连接数据库

添加两个控件richTextBox1和button1。

上边通过控件已经生成过连接字符串,可以复制

4、程序编写与结果

privatevoidForm1_Load(objectsender,EventArgse)

{

//TODO:

这行代码将数据加载到表“”中。

您可以根据需要移动或移除它。

this.teacherTableAdapter.Fill(this.sCDBDataSet3.Teacher);

//TODO:

这行代码将数据加载到表“”中。

您可以根据需要移动或移除它。

this.student1TableAdapter.Fill(this.sCDBDataSet1.student1);

}

privatevoidbutton3_Click(objectsender,EventArgse)

{

stringConStr="DataSource=911-57;InitialCatalog=scdb;IntegratedSecurity=True";//连接字符串

SqlConnectionconn=newSqlConnection(ConStr);//建立一个数据库连接实例

conn.Open();//打开数据库连接

SqlCommandcmd=newSqlCommand();//用于执行SQL语句

cmd.Connection=conn;

cmd.CommandText="selectSno,cno,gradefromScorewhere(Scoreo='002'orcno='003')";

cmd.CommandType=CommandType.Text;

SqlDataReadersdr=cmd.ExecuteReader();//执行

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);//建立一个数据库连接实例

conn.Open();//打开数据库连接

SqlCommandcmd=newSqlCommand();//用于执行SQL语句

cmd.Connection=conn;

cmd.CommandText="selectSno,Sname,2014-Sagefromstudent1";

cmd.CommandType=CommandType.Text;

SqlDataReadersdr=cmd.ExecuteReader();//执行

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);//建立一个数据库连接实例

conn.Open();//打开数据库连接

SqlCommandcmd=newSqlCommand();//用于执行SQL语句

cmd.Connection=conn;

cmd.CommandText="selectcount(Sdept)fromstudent1groupbysdept";

cmd.CommandType=CommandType.Text;

SqlDataReadersdr=cmd.ExecuteReader();//执行

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);//建立一个数据库连接实例

conn.Open();//打开数据库连接

SqlCommandcmd=newSqlCommand();//用于执行SQL语句

cmd.Connection=conn;

cmd.CommandText="selectTnamefromTeacher,ScorewhereScoreo=TeacherogroupbyTnamehavingcount(Scoreo)>3";

cmd.CommandType=CommandType.Text;

SqlDataReadersdr=cmd.ExecuteReader();//执行

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);//建立一个数据库连接实例

conn.Open();//打开数据库连接

SqlCommandcmd=newSqlCommand();//用于执行SQL语句

cmd.Connection=conn;

cmd.CommandText="selectSname,student1.Sdeptfromstudent1whereSnonotin(selectSnofromScore)";

cmd.CommandType=CommandType.Text;

SqlDataReadersdr=cmd.ExecuteReader();//执行

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);//建立一个数据库连接实例

conn.Open();//打开数据库连接

SqlCommandcmd=newSqlCommand();//用于执行SQL语句

cmd.Connection=conn;

cmd.CommandText="selectSname,Cno,GradefromScoreScore,Student1where(Student.Sno=Score.Sno)andScore.Gradein(selectMAX(Grade)fromScorewhereScore.Sno=Score.SnogroupbySno)";

cmd.CommandType=CommandType.Text;

SqlDataReadersdr=cmd.ExecuteReader();//执行

richTextBox1.Text="";

while(sdr.Read())//每次读一条记录读完停止

{

 

richTextBox1.Text+=sdr.GetString(0)+""+sdr.GetString

(1)+""+sdr.GetInt32

(2)+"\n";//读出的的字符串赋值给控件

}

conn.Dispose();//销毁连接

}

}

}

四、实验中的问题及解决方法

1、代码编写时我总是忘记用英文符号,导致程序出现错误。

检查之后改正。

2、在编写按钮的程序时应先打开form,左键双击需编写的按钮,在指定位置处编写。

3、在更换电脑后,程序中的电脑号需改正。

4、语句应与调出的属性数量一致。

五、实验总结

通过本次实验,我学会了配置ODBC数据源,并用其进行了数据库应用程序的设计,通过ODBC接口对数据库进行了操作。

在实验中遇到了很多问题,通过问老师、看书查资料等方法得到了解决,为今后进一步学习数据库打下了基础。

实验三数据库的建立及数据维护

一、实验目的

1、学会通过IIS配置Web服务器,建立虚拟目录

2、

3、掌握ASP.NET技术实现简单的动态网页的制作。

二、实验环境及要求

1.实验环境:

Windows7,SQLServer2008,VisualStudio2010。

2.实验要求:

设计网页,显示“实验一”中11个查询的结果。

三、实验步骤及结果

1、实验步骤

1)在MicrosoftVisualStudio2008(以下简称VS2008)中添加一个ASP.NETWeb应用程序项目,名称为scdb;

2)在scdb项目上点击右键->添加->新建项;

3)选择web窗体,名称Query_Result_1.aspx;点击添加;

4)生成一个页面,点击页面下方的“设计”按钮,跳转到设计页面;

5〕点击左侧的“工具箱”,选择“数据”中“GridView”拖拽到右侧的设计页面中;

6〕点击GridView任务中“选择数据源”下拉框,选择“新建数据源”,在选择“数据库”,为数据源指定ID为SqlDataSourcescdb,点击“确定”;

7〕点击“新建连接”,弹出链接窗口,服务器名称:

(local),在选择数据库与名中,选择自己建立的数据库名,“scdb”;再点击“测试连接”,弹出“测试连接成功”,即连接数据库成功,点击“确定”;

8〕在下拉框中选择“scdbConnectionString”,点击“下一步”;

9〕在“希望如何从数据库中检索”选择“指定自定义SQL或存储语句”,点击“下一步”,在SELECT标签下,点击“查询生成器”,点击“Student”,点击“添加”,点击“关闭”,关闭“添加表”对话框;

10〕在查询生成器,选择Sno,Sname两列,然后添加表达式2012–Sage,点击“执行查询”,生成器底部会产生查询结果,然后点击“确定”;

11〕点击“下一步”

12〕点击“测试查询”则出现查询结果,即查询数据成功,然后点击“完成”结束。

13〕点击“GridView任务”中的“编辑列”,会出现编辑框。

14〕在“选定的字段”中点击“Sno”出现Sno属性框,在“外观”中的“HeaderText”后面的编辑框中将“Sno”改为“学号”。

15〕“Sname”与“Expr1”的列名修改操作与“Sno”的相同,点击“确定”结束;

16〕在“GridView任务”中的“自动套用格式”中选择自己喜欢的界面风格;

17〕点击“源”,切换源代码页面,修改无标题页面中的标题为“查询1结果”;

18〕右键单击“解决方案”中的“Query_Result_1.aspx”,选择“在浏览器中查看”。

四、实验中的问题及解决方法

1、配置IIS的问题,需要选中全部IIS组件,然后新建虚拟目录配置网站。

2、因为对程序的不熟悉,导致实验没能在规定时间内做完。

五、实验总结

通过本次实验,我学会了配置IIS并建立虚拟目录,了解了关于的一些相关知识,使用VisualStudio进行编写,虽然最终没能完成,但我懂得了如何在IE上执行自己编写的网页,实现简单的动态网页制作与数据库在网页上的显示功能。

此次实验使我收益匪浅。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2