软件开发环境与工具实验报告计算机0903.docx
《软件开发环境与工具实验报告计算机0903.docx》由会员分享,可在线阅读,更多相关《软件开发环境与工具实验报告计算机0903.docx(26页珍藏版)》请在冰豆网上搜索。
![软件开发环境与工具实验报告计算机0903.docx](https://file1.bdocx.com/fileroot1/2023-4/21/8d683bca-bffa-415e-9bbd-aabb0961c914/8d683bca-bffa-415e-9bbd-aabb0961c9141.gif)
软件开发环境与工具实验报告计算机0903
软件开发环境与工具
实验报告
学院:
计算机与软件学院
专业:
计算机与科学技术
班级:
计算机0903班
学号:
姓名:
太原理工大学学生实验报告
学院名称
计算机科学与技术
专业班级
计算机0903
学号
学生姓名
实验日期
2011.06.20
成绩
课程名称
软件开发环境与工具
实验题目
CASE工具PowerDesiner的使用
一、实验目的:
安装PowerDesiner,并了解掌握PowerDesiner的主要功能和使用方法。
二、实验内容:
1.安装PowerDesiner。
2.了解CDM的主要设计元素和设计过程。
3.熟悉模型转换工具的使用。
4.熟悉PDM的主要设计元素和设计过程。
5.了解设计报告的生成方法。
三、实验要求:
设计学生住宿管理的CDM、PDM。
要求PDM能方便实现以下功能:
1.学生管理
(1)录入班级、院、专业:
可以添加、删除、插入学院、专业、年级信息
(2)录入学生信息:
对宿舍编号、姓名、院、专业、性别、年级、班级、出生年月、籍贯、住宿费、押金、录入日期等内容。
可以添加、修改、删除等。
(3)查询:
可设置查询条件,对学生信息进行查询。
(4)换宿舍:
可进行换房,有原房号,新房号,姓名等项。
(5)毕业班清理:
对于已经毕业的班级,可以选择清除的年级,进行清理。
2.宿舍管理
(1)录入宿舍信息:
有宿舍编号、宿舍电话、应住人数、录入日期等栏目。
对以上信息可以进行浏览、添加、修改、删除等。
(2)宿舍信息统计:
可以根据楼号、宿舍编号进行查询统计。
查询内容包括:
宿舍编号、应住人数、实住人数、空位数、宿舍电话、录入日期等项。
统计内容包括应住人数、实住人数、空位数等。
3.卫生管理
(1)录入统计:
填入学院、年级、宿舍编号可查卫生平均分。
还进行增、删、改、查等功能。
(2)卫生排名:
选择年级,按全部寝室排名或按栋排名。
四、实验.步骤:
1.运行PowerDesiner安装文件。
2.按照安装向导,安装PowerDesiner。
3.安装成功之后,进入PowerDesiner的CDM设计界面,了解CDM的主要设计元素和设计过程。
4.分析住宿管理的需求,分析其中应含有的实体及其属性,建立实体联系,设计住宿管理的CDM。
5.检测CDM,并进行模型转换。
6.优化PDM。
7.生成设计报告。
8.实验结束后,整理实验报告。
五、实验内容:
CDM
‘’’
PDM
六、思考题
1、cdm和pdm有何区别。
答:
cdm是概念模型,用于数据库的概念结构设计阶段,表现数据库的逻辑结构。
类似数据库中的e-r图,cdm独立于dbms与应用软件。
pdm是物理模型,表现数据库的物理结构。
pdm提供操作pdm与智能商务pdm,前者用于oltp的物理结构设计,后者用于olap的物理结构设计。
2、如何使用pdm生成创建数据库的脚本。
答:
在pd的主窗口中选择database->generatedatabase。
然后在generate设置产生数据库的一般脚本设置,脚本存放的位置。
实验地点
综合楼六层606室
指导教师
相洁
太原理工大学学生实验报告
学院名称
计算机科学与技术
专业班级
计算机0903
学号
2009001490
学生姓名
胡强强
实验日期
2011.06.21
成绩
课程名称
软件开发环境与工具
实验题目
熟悉SQL语言
一、实验目的:
学习简单SQL语句的使用,为后续学习和实验奠定基础。
二、实验内容:
掌握简单SELECT、INSERT、UPDATE、DELETE等语句的用法。
三、实验要求:
1.编写一条SELECT语句,从表Student中查询满足条件:
性别为女并且班级编号为030001的记录。
2.编写一条SELECT语句,从表Course中查询满足条件:
课程名称为‘计算机组成原理’的记录,每条记录只显示’课程编号’、’课程名称’、’课程介绍’3列。
3.编写一条SELECT语句,从表Student中查询满足条件:
姓名为’王晶’、’李平’、‘赵飞’、’卫清’的学生的记录,并将结果存入自动生成的表’Student3’中。
4.编写一条SELECT语句,从表Teacher中查询满足条件:
TTcode列为空的记录并且DNO为’0005’的记录。
5.编写一条SELECT语句,从表Teacher和表TC中查询数据:
显示教师与其讲授课程的基本信息。
6.向表Student中添加数据:
姓名:
李玲,出生日期:
1986-5-2,学号:
03011,班级编号:
030006。
7.删除数据表’Student’中计算机专业的男学生的信息。
8.修改数据表’Student’中李刚的性别为男。
四、实验步骤:
1.打开SQLServer查询分析器。
2.选择SM数据库。
3.按照要求,在查询分析器中输入SQL语句,并执行,检查执行结果。
4.保存正确执行的SQL语句。
5.实验结束后,整理实验报告。
五、实验内容
1.select*fromstudentwhereCLno='030001'andSSex='女'
2.selectCno,Cname,CInfofromcoursewhereCName='计算机网络'
3.select*intostudent3fromstudentwhereSnameIN('王晶','李平','赵飞','卫清')
4.select*fromteacherwhereTTcodeisnullandDNO='0005'
5.select*fromteachera,tcbwherea.tno=b.tno
6.insertintostudent(Sname,Sbir,SNo,CLno)values('李玲','1986-05-02','03011','030006')
7.DeletefromstudentwhereSSex=’男’
8.updatestudentsetSsex='男'whereSname='李刚'
六、思考题
1.如何对查询结果进行排序。
答:
应当使用OrderBy语句对结果进行排序。
例如:
查询SC表中的所有字段,在结果中显示所有及格学生的记录,并按学号降序排序。
代码如下:
Select*fromscwherescore>=60orderbySnodesc.
实验地点
实验综合楼606
指导教师
相洁
太原理工大学学生实验报告
学院名称
计算机科学与技术
专业班级
计算机0903
学号
2009001490
学生姓名
胡强强
实验日期
2011.06.22
成绩
课程名称
软件开发环境与工具
实验题目
搭建Delphi开发环境,设计用户界面
一、实验目的:
安装Delphi,熟悉Delphi开发环境。
熟练掌握构成用户界面的主要控件的属性和事件。
二、实验内容:
1.安装Delphi。
2.熟悉常用控件的属性和事件。
3.掌握调整界面上控件的大小和位置的方法。
三、实验要求:
1.设计用户登录界面
要求如下:
(1)界面应提供注册用户、登录、取消等功能。
(2)界面美观大方。
(3)控件命名规范。
(4)密码输入后显示“*”。
(5)用户名的最大长度为10个字符。
2.设计住宿管理系统中学生基本信息的录入界面
要求如下:
(1)界面应提供录入学生基本信息的相关控件。
(2)应提供增加、修改、删除、保存等功能。
(3)界面美观大方。
(4)控件命名规范。
四、实验步骤:
1.运行Delphi的安装文件。
2.按照安装向导说明,完成安装。
3.打开Delphi,进入IDE,熟悉编程环境。
4.新建住宿管理项目。
5.按照设计内容,在窗体中增加控件。
6.修改控件的相关属性。
7.调整控件大小和对齐。
五、实验内容
1.登录界面
2.录入界面
六、思考题:
调整界面控件大小和位置的方法有哪些?
答:
控件的大小可以在窗体中进行直接拖拽,也可以在属性栏里直接输入数字进行调整。
控件的位置,比如说对齐,先按下Shift键不放,再用鼠标单击所要选择的控件,或者直接用鼠标在窗体上拉出一个矩形,选中多个控件,点击右键,选中Pozision,然后Align选项,调整位置即可。
实验地点
综合实验楼606
指导教师
相洁
太原理工大学学生实验报告
学院名称
计算机科学与技术
专业班级
计算机0903
学号
2009001490
学生姓名
胡强强
实验日期
2011.06.23
成绩
课程名称
软件开发环境与工具
实验题目
掌握数据库连接方法
一、实验目的:
熟练掌握Delphi中通过BDE连接数据库的方法,DataAccess和DataControl常用控件的使用方法。
二、实验内容:
1.设计并实现用户注册和修改密码功能。
2.设计并实现住宿管理中学生基本信息录入功能。
三、实验要求:
在实验三的基础上,连接数据库,填加控件的事件,实现用户登录功能、用户注册和修改密码的功能。
1.注册用户
要求完成以下功能:
(1)用户名合法性检测
(2)密码长度检测。
(3)密码和确认密码一致性检测。
2.修改密码
(1)提供旧密码,旧密码正确,允许修改,否则进行提示。
(2)将新密码保存到数据库中。
3.学生基本信息录入
(1)录入内容包括:
学号、姓名、性别、院、专业、班级、出生年月、籍贯、住宿费、押金等内容。
(2)提供增加、修改、删除、查询等功能。
四、实验步骤:
1.打开Delphi,进入编程界面。
2.选择相应的数据控件,修改相关属性,连接数据库。
3.填加相关事件,完成对数据库的操作。
4.编译、调试、运行程序。
五、实验内容
登录界面
源代码:
unitUnit1;
interface
uses
Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,
Dialogs,StdCtrls;
type
TForm1=class(TForm)
Button1:
TButton;
Button2:
TButton;
Label1:
TLabel;
Edit1:
TEdit;
Label2:
TLabel;
Edit2:
TEdit;
procedureButton1Click(Sender:
TObject);
procedureButton2Click(Sender:
TObject);
procedureFormCreate(Sender:
TObject);
private
{Privatedeclarations}
public
{Publicdeclarations}
end;
var
Form1:
TForm1;
implementation
usesUnit3,Unit2;
{$R*.dfm}
procedureTForm1.Button1Click(Sender:
TObject);
begin
form3.Query1.Close;
form3.Query1.SQL.Clear;
form3.Query1.SQL.Add('selectusername,passwordfromsushewhereusername='''+edit1.Text+'''andpassword='''
+edit2.Text+'''');
form3.Query1.Open;
ifform3.query1.recordcount=0then
begin
if(trim(edit1.Text)='form3.Query1.FieldByName('姓名').AsString')and(trim(edit2.Text)='form3.Query1.FieldByName('学号').AsString')then
begin
form2.ShowModal;
form2.Hide;
form2.Free;
end
else
begin
edit1.tag:
=edit1.tag+1;
ifedit1.tag>=3then
begin
showmessage('用户名或密码错误,输入超过3次!
');
application.Terminate;
end
else
begin
showmessage('用户名或密码错误,请重新输入!
');
edit1.text:
='';
edit2.text:
='';
edit1.setfocus;
end;
end;
end;
procedureTForm1.Button2Click(Sender:
TObject);
begin
application.Terminate;
end;
procedureTForm1.FormCreate(Sender:
TObject);
begin
end;
end.
修改密码界面
源代码:
unitUnit2;
interface
uses
Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,
Dialogs,StdCtrls;
type
TForm2=class(TForm)
Label1:
TLabel;
Label2:
TLabel;
Button1:
TButton;
Button2:
TButton;
edit1:
TEdit;
edit2:
TEdit;
procedureButton1Click(Sender:
TObject);
procedureButton2Click(Sender:
TObject);
private
{Privatedeclarations}
public
{Publicdeclarations}
end;
var
Form2:
TForm2;
implementation
usesUnit3;
{$R*.dfm}
procedureTForm2.Button1Click(Sender:
TObject);
begin
if(trim(edit1.Text)='')then
begin
showmessage('请输入旧密码!
');
end;
if(trim(edit1.Text)='zhangwei')then
begin
showmessage('请输入新密码!
');
edit2.Text:
='';
form3.Query1.Post;
end;
end;
procedureTForm2.Button2Click(Sender:
TObject);
begin
close;
end;
end.
基本信息录入界面
源代码:
unitUnit1;
interface
uses
Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,
Dialogs,DB,DBTables,Grids,DBGrids,StdCtrls;
type
TForm1=class(TForm)
Edit1:
TEdit;
Edit2:
TEdit;
Edit3:
TEdit;
Edit4:
TEdit;
Edit5:
TEdit;
Edit6:
TEdit;
Edit7:
TEdit;
DataSource1:
TDataSource;
DBGrid1:
TDBGrid;
Database1:
TDatabase;
Query1:
TQuery;
Label1:
TLabel;
Label2:
TLabel;
Label3:
TLabel;
Label4:
TLabel;
Label5:
TLabel;
Label6:
TLabel;
Label7:
TLabel;
Button1:
TButton;
Button2:
TButton;
Button3:
TButton;
Button4:
TButton;
Button5:
TButton;
Button6:
TButton;
Button7:
TButton;
Button8:
TButton;
Button9:
TButton;
Table1:
TTable;
Button10:
TButton;
procedureButton1Click(Sender:
TObject);
procedureButton2Click(Sender:
TObject);
procedureButton3Click(Sender:
TObject);
procedureButton4Click(Sender:
TObject);
procedureButton5Click(Sender:
TObject);
procedureButton6Click(Sender:
TObject);
procedureButton7Click(Sender:
TObject);
procedureButton8Click(Sender:
TObject);
procedureButton9Click(Sender:
TObject);
procedureFormShow(Sender:
TObject);
private
{Privatedeclarations}
proceduredisplayRecord;
public
{Publicdeclarations}
end;
var
Form1:
TForm1;
Implementation
procedureTForm3.Button6Click(Sender:
TObject);
varsqlstr:
string;
begin
sqlstr:
='select*fromsushewhere(1=1)';
ifedit1.Text<>''then
sqlstr:
=sqlstr+'and(学号='''+edit1.Text+''')';
ifedit2.Text<>''then
sqlstr:
=sqlstr+'and(姓名='''+edit2.Text+''')';
ifedit3.Text<>''then
sqlstr:
=sqlstr+'and(性别='''+edit3.Text+''')';
ifedit4.Text<>''then
sqlstr:
=sqlstr+'and(出生年月='''+edit4.Text+''')';
ifedit5.Text<>''then
sqlstr:
=sqlstr+'and(政治面貌='''+edit5.Text+''')';
ifedit6.Text<>''then
sqlstr:
=sqlstr+'and(籍贯='''+edit6.Text+''')';
ifedit7.Text<>''then
sqlstr:
=sqlstr+'and(入学成绩='''+edit7.Text+''')';
form3.Query1.Close;
form3.Query1.SQL.Clear;
form3.Query1.SQL.Add(sqlstr);
form3.Query1.Active:
=true;
end;
procedureTform1.displayRecord;
begin
iftable1.RecordCount=0then
begin
edit1.Text:
='';
edit2.Text:
='';
edit3.Text:
='';
edit4.Text:
='';
edit5.Text:
='';
edit6.Text:
='';
edit7.Text:
='';
button1.Enabled:
=false;
button2.Enabled:
=false;
button3.Enabled:
=false;
button4.Enabled:
=false;
button6.Enabled:
=false;
button7.Enabled:
=false;
button8.Enabled:
=false;
end
else
begin
edit1.Text:
=table1.fieldbyname('学号').asstring;
edit2.Text:
=table1.fieldbyname('姓名').asstring;
edit3.Text:
=table1.fieldbyname('性别').asstring;
edit4.Text:
=table1.fieldbyname('出生年月').asstring;
edit5.Text:
=table1.fieldbyname('政治面貌').asstring;
edit6.Text:
=table1.fieldbyname('籍贯').asstring;
edit7.Text:
=table1.fieldbyname('入学成绩').asstring;
iftable1.bofthen
begin
button1.Enabled:
=false;
button2.Enabled:
=false;
button3.Enabled:
=true;
button4.Enabled:
=true;
end
else
iftable1.Eofthen
begin
button1.Enabled:
=true;
button2.Enabled:
=true;
button3.Enabled:
=false;
button4.Enabled:
=false;
end
else
begin
button1.Enabled:
=true;
button2.Enabled:
=true;
button3.Enabled:
=true;
button4.Enabled:
=tr