软件开发环境与工具
实验报告
学院:计算机与软件学院
专业:计算机与科学技术
班级:计算机0903班
学号:2009001490
姓名: 胡强强
太原理工大学学生实验报告
学院名称
计算机科学与技术
专业班级
计算机0903
学号
2009001490
学生姓名
胡强强
实验日期
2011.06.20
成绩
课程名称
软件开发环境与工具
实验题目
CASE工具PowerDesiner的使用
一、实验目的:
安装PowerDesiner,并了解掌握PowerDesiner的主要功能和使用
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
。
二、实验内容:
1.安装PowerDesiner。
2.了解CDM的主要
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
元素和设计过程。
3.熟悉模型转换工具的使用。
4.熟悉P DM的主要设计元素和设计过程。
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->generate database。然后在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.打开SQL Server 查询分析器。
2.选择SM数据库。
3.按照要求,在查询分析器中输入SQL语句,并执行,检查执行结果。
4.保存正确执行的SQL语句。
5.实验结束后,整理实验报告。
五、实验内容
1 .select * from student where CLno= '030001' and SSex='女'
2.select Cno,Cname,CInfo from course where CName='计算机网络'
3.select * into student3 from student where Sname IN ('王晶','李平','赵飞','卫清')
4.select * from teacher where TTcode is null and DNO='0005'
5.select * from teacher a , tc b where a.tno=b.tno
6.insert into student(Sname,Sbir,SNo,CLno)values('李玲','1986-05-02','03011','030006')
7.Delete from student where SSex=’男’
8.update student set Ssex='男' where Sname='李刚'
六、思考题
1.如何对查询结果进行排序。
答:
应当使用 Order By 语句对结果进行排序。
例如:
查询SC表中的所有字段,在结果中显示所有及格学生的记录,并按学号降序排序。
代码如下:
Select * from sc where score>=60 order by Sno desc.
实验地点
实验综合楼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连接数据库的方法,Data Access和Data Control常用控件的使用方法。
二、实验内容:
1.设计并实现用户注册和修改密码功能。
2.设计并实现住宿管理中学生基本信息录入功能。
三、实验要求:
在实验三的基础上,连接数据库,填加控件的事件,实现用户登录功能、用户注册和修改密码的功能。
1.注册用户
要求完成以下功能:
(1)用户名合法性检测
(2)密码长度检测。
(3)密码和确认密码一致性检测。
2.修改密码
(1)提供旧密码,旧密码正确,允许修改,否则进行提示。
(2)将新密码保存到数据库中。
3.学生基本信息录入
(1)录入内容包括:学号、姓名、性别、院、专业、班级、出生年月、籍贯、住宿费、押金等内容。
(2)提供增加、修改、删除、查询等功能。
四、实验步骤:
1.打开Delphi,进入编程界面。
2.选择相应的数据控件,修改相关属性,连接数据库。
3.填加相关事件,完成对数据库的操作。
4.编译、调试、运行程序。
五、实验内容
登录界面
源代码:
unit Unit1;
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;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit3, Unit2;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
form3.Query1.Close ;
form3.Query1.SQL.Clear ;
form3.Query1 .SQL.Add('select username,password from sushe where username='''+edit1.Text +''' and password='''
+edit2.Text +'''');
form3.Query1.Open ;
if form3.query1.recordcount=0 then
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;
if edit1.tag>=3 then
begin
showmessage('用户名或密码错误,输入超过3次!');
application.Terminate ;
end
else
begin
showmessage('用户名或密码错误,请重新输入!');
edit1.text:='';
edit2.text:='';
edit1.setfocus;
end;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
application.Terminate;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
end;
end.
修改密码界面
源代码:
unit Unit2;
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;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
uses Unit3;
{$R *.dfm}
procedure TForm2.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;
procedure TForm2.Button2Click(Sender: TObject);
begin
close;
end;
end.
基本信息录入界面
源代码:
unit Unit1;
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;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure Button9Click(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
procedure displayRecord;
public
{ Public declarations }
end;
var
Form1: TForm1;
Implementation
procedure TForm3.Button6Click(Sender: TObject);
var sqlstr:string;
begin
sqlstr:='select * from sushe where (1=1)';
if edit1.Text <>'' then
sqlstr:=sqlstr+' and (学号='''+edit1.Text +''')';
if edit2.Text <>'' then
sqlstr:=sqlstr+' and (姓名='''+edit2.Text +''')';
if edit3.Text <>'' then
sqlstr:=sqlstr+' and (性别='''+edit3.Text +''')';
if edit4.Text <>'' then
sqlstr:=sqlstr+' and (出生年月='''+edit4.Text +''')';
if edit5.Text <>'' then
sqlstr:=sqlstr+' and (政治面貌='''+edit5.Text +''')';
if edit6.Text <>'' then
sqlstr:=sqlstr+' and (籍贯='''+edit6.Text +''')';
if edit7.Text <>'' then
sqlstr:=sqlstr+' and (入学成绩='''+edit7.Text +''')';
form3.Query1.Close ;
form3.Query1.SQL.Clear ;
form3.Query1 .SQL.Add(sqlstr);
form3.Query1.Active :=true;
end;
procedure Tform1.displayRecord ;
begin
if table1.RecordCount=0 then
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;
if table1.bof then
begin
button1.Enabled:=false;
button2.Enabled:=false;
button3.Enabled:=true;
button4.Enabled:=true;
end
else
if table1.Eof then
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:=true;
end;
end;
end;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
table1.First ;
displayRecord;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
table1.Prior ;
displayRecord;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
table1.Next ;
displayRecord;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
table1.Last ;
displayRecord;
end;
procedure TForm3.Button3Click(Sender: TObject);
begin
if messagedlg('确实要删除该记录吗?',mtwarning,[mbyes,mbno],0)=mryes then
begin
form3.Query1.Delete ;
end
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
table1.Append ;
button5.Enabled:=false;
button6.Enabled:=false;
button7.Enabled:=false;
button8.Enabled:=true;
button9.Enabled:=true;
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
edit4.Text:='';
edit5.Text:='';
edit6.Text:='';
edit7.Text:='';
edit1.SetFocus ;
end;
procedure TForm1.Button6Click(Sender: TObject);
begin
table1.Edit ;
button5.Enabled:=false;
button6.Enabled:=false;
button7.Enabled:=false;
button8.Enabled:=true;
button9.Enabled:=true;
edit1.SetFocus ;
end;
procedure TForm1.Button7Click(Sender: TObject);
begin
if messagedlg('确实要删除该记录吗?',mtwarning,[mbyes,mbno],0)=mryes then
begin
table1.Delete ;
displayrecord;
end;
end;
procedure TForm1.Button8Click(Sender: TObject);
begin
if (trim(edit1.Text)='')or(trim(edit2.Text)='')then
begin
showmessage('学号和姓名不能为空');
edit1.SetFocus ;
exit;
end;
table1.FieldByName('学号').asstring:=edit1.Text ;
table1.FieldByName('姓名').asstring:=edit1.Text ;
table1.FieldByName('性别').asstring:=edit1.Text ;
table1.FieldByName('出生年月').asstring:=edit1.Text ;
table1.FieldByName('政治面貌').asstring:=edit1.Text ;
table1.FieldByName('籍贯').asstring:=edit1.Text ;
table1.FieldByName('入学成绩').asstring:=edit1.Text ;
table1.Post ;
button5.Enabled:=true;
button6.Enabled:=true;
button7.Enabled:=true;
button8.Enabled:=false;
button9.Enabled:=false;
displayrecord;
end;
procedure TForm1.Button9Click(Sender: TObject);
begin
table1.Cancel ;
displayrecord;
button5.Enabled:=true;
button6.Enabled:=true;
button7.Enabled:=true;
button8.Enabled:=false;
button9.Enabled:=false;
end;
procedure TForm1.FormShow(Sender: TObject);
begin
button8.Enabled:=false;;
button9.Enabled:=false;;
displayrecord;
end;
end.
实验地点
综合实验楼606
指导教师
相洁