急!求个数据库课程的设计!!

急!求个数据库课程的设计!!,第1张

《数据库原理及应用》课程设计

数据库原理课程设计任务书

一、目的

1. 掌握计算机管理信息系统设计的一般方法,主要包括系统分析、系统设计的组织和实施。

2. 关系型数据库管理系统的编程技术,并能独立完成一般小系统的程序设计、调试运行等工作。

3. 培养把所学知识运用到具体对象,并能求出解决方案的能力。

二、任务(任选其一)

A.运用关系型数据库管理系统,实现本院图书馆管理信息系统。具体要求如下:

—图书、资料的登记、注销和查询。

—借书证管理,包括申请、注销借书证,查询借书证持有人等。

—借还图书、资料的登记、超期处理,超期拒借等。

—图书、资料查询,借、还图书和资料情况查询。

—图书、资料借阅情况的统计分析,拒此作为图书馆图书、资料订够的依据之一。(本项不作为基本要求)

B. 运用关系型数据库管理系统,实现服务电话管理系统

向客户现场派技术人员的服务公司可以用服务电话管理系统跟踪客户、员工、工作订单、发票、付款等等。

要求:

数据库要存储以下信息:

—客户信息

—客户工需单信息

—完成工需单所需人工

—完成工需单所需部件

—部件信息

—付款信息

—雇员信息

完成的功能:

—输入/查看 客户工需单信息

—输入/查看部件、雇员等其它信息

—付款

—打印发票等

三、结果形式

1. 设计报告:含E-R图、数据字典、关系模式、关系实例、查询描述、关系代数、SQL实现的查询语言及查询结果。

2. 上机实现。

四、考核

1. 课程设计态度(20分)。

2. 递交的书面材料(40分)。

3. 上机运行情况(40分)

目录

1.问题描述 2

1.1背景 2

1.2数据需求 2

1.3事物需求 3

1.4关系模式 3

2.方案图表设计 3

2.1 E-R图 3

2.2数据流程图 8

2.3数据字典 9

2.4关系图: 11

3.数据库源代码 12

3.1数据库建立 12

3.2数据初始化 14

4.结果数据处理 17

4.1单表查询 17

4.2超期处理 19

4.3还书 *** 作 20

4.4借书 *** 作 22

4.5书籍状态 24

4.6读者状态 24

5.结束语 26

5.1课程设计心得 26

1.问题描述

1.1背景

随着图书馆规模的不断扩大,图书数量也相应的增加,有关图书的各种信息量也成倍增加,面对着庞大的信息量,传统的人工方式管理会导致图书馆管理上的混乱,人力与物力过多浪费,图书馆管理费用的增加,从而使图书馆的负担过重,影响整个图书馆的运作和控制管理,因此,必须制定一套合理、有效,规范和实用的图书管理系统,对图书资料进行集中统一的管理。

另一方面,IT产业和Internet获得了飞速发展,计算机应用已渗透到了各个领域,引起信息管理的革命,实现了信息的自动化处理,提高了处理的及时性和正确性。

提高图书管理工作效率,作到信息的规范管理,科学统计和快速查询,让图书馆更好的为学校,社会服务。

1.2数据需求

图书馆管理信息系统需要完成功能主要有:

1. 读者基本信息的输入,包括借书证编号、读者姓名、读者性别。

2.读者基本信息的查询、修改,包括读者借书证编号、读者姓名、读者性别等。

3.书籍类别标准的制定、类别信息的输入,包括类别编号、类别名称。

4.书籍类别信息的查询、修改,包括类别编号、类别名称。

5.书籍库存信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、登记日期。

6.书籍库存信息的查询,修改,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期登记日期等。

7.借书信息的输入,包括读者借书证编号、书籍编号、借书日期。

8.借书信息的查询、修改,包括借书证编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期等。

9.还书信息的输入,包括借书证编号、书籍编号、还书日期。

10.还书信息的查询和修改,包括还书读者借书证编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等。

11.超期还书罚款输入,还书超出期限包括超出期限还书的读者借书证号,书籍编号,罚款金额。

12.超期还书罚款查询,删除,包括读者借书证编号、读者姓名、书籍编号、书籍名称,罚款金额等

1.3事物需求

(1)在读者信息管理部分,要求:

a.可以查询读者信息。

b.可以对读者信息进行添加及删除的 *** 作。

(2 )在书籍信息管理部分,要求:

a.可以浏览书籍信息,要求:

b.可以对书籍信息进行维护,包括添加及删除的 *** 作。

(3)在借阅信息管理部分,要求:。

a.可以浏览借阅信息。

b.可以对借阅信息进行维护 *** 作。

(4)在归还信息管理部分,要求:

a.可以浏览归还信息

b.对归还信息可修改维护 *** 作

(5)在管理者信息管理部分,要求:

a.显示当前数据库中管理者情况。

b.对管理者信息维护 *** 作。

(6)在罚款信息管理部分,要求:

a.可以浏览罚款信息

b.对罚款信息可以更新

1.4关系模式

(一) 书籍类别(种类编号,种类名称)

(二) 读者(借书证编号,读者姓名,读者性别,读者种类,登记时期)

(三) 书籍(书籍编号,书籍名称,书籍类别,书记作者,出版社名称,出版日期,登记日期)

(四) 借阅(借书证编号,书籍编号,读者借书时间)

(五) 还书(借书证编号,书籍编号,读者还书时间)

(六) 罚款(借书证编号,读者姓名,借书证编号,书籍编号,读者借书时间)

以上通过关系代数方法的进行运算得到所需要的结果,在实验结果中可以看到。

2.方案图表设计

2.1 E-R图

根据1)所要实现的功能设计,可能建立它们之间的关系,进而实现逻辑结构功能。

图书管理信息系统可以划分的实体有:书籍类别信息实体、读者信息实体、书籍信息实体、借阅记录信息实体,归还记录信息实体。用E-R图一一描述这些实体。

2.1.1类别实体E-R图:

图2-1类别实体E-R图

2.1.2读者信息实体E-R图:

图2-2 读者信息实体E-R图

2.1.3信息实体E-R图:

图2-3信息实体E-R图

2.1.4.记录信息实体E-R图:

图2-4 记录信息实体E-R图

2.1.5记录信息实体E-R图:

图2-5记录信息实体E-R图

2.1.6罚款信息实体E-R图:

图2-6罚款信息实体E-R图

2.1.6总的信息实体E-R图:

图2-7总的信息实体E-R图

2.2数据流程图

D5

归还信息录入 基本信息录入

D2

D1

基本信息录入 基本信息录入

D3

D4

借阅信息录入

读者信息返回 书籍信息返回

图2-7系统的数据流程图

2.3数据字典

表2-1 book_sytle 书籍类别信息表

表中列名 数据类型 可否为空 说明

bookstyleno varchar not null(主键) 种类编号

bookstyle Varchar not null 种类名称

表2-2 system_readers读者信息表格

表中列名 数据类型 可否为空 说明

readerid varchar not null(主键) 读者借书证号

readername varchar not null 读者姓名

readersex varchar not null 读者性别

readertype varchar null 读者种类

regdate datetime null 登记日期

表2-3 system_book书籍信息表

表中列名 数据类型 可否为空 说明

bookid Varchar Not null(主键) 书籍编号

bookname Varchar Not null 书籍名称

bookstyle Varchar Not null 书籍类别

bookauthor Varchar Not null 书籍作者

bookpub Varchar Null 出版社名称

bookpubdate Datetime Null 出版日期

bookindate Datetime Null 登记日期

isborrowed Varchar Not Null 是否被借出

表2-4 borrow_record 借阅记录信息表

表中列名 数据类型 可否为空 说明

readerid Varchar Not null(外主键) 读者借阅证编号

bookid Varchar Not null(外主键) 书籍编号

borrowdate Varchar Not null 读者借书时间

表2-5 return_record 借阅记录信息表

表中列名 数据类型 可否为空 说明

readername Varchar Not null(外主键) 读者借阅证编号

readerid Varchar Not null(外主键) 书籍编号

returndate datetime Not null 读者还书时间

表2-6 reader_fee 罚款记录信息表

readerid varchar Not null 读者借书证编号

readername varchar Not null 读者姓名

bookid varchar Not null(外主键) 书籍编号

bookname varchar Not null 书籍名称

bookfee varchar Not Null 罚款金额

borrowdate datetime Not Null 借阅时间

2.4关系图:

图2-8数据库存表关系图

3.数据库源代码

3.1数据库建立

3.1.1创建数据库

USE master

GO

CREATE DATABASE librarysystem

ON

( NAME = librarysystem,

FILENAME = 'd:\librarysystem.mdf',

SIZE = 10,

MAXSIZE = 50,

FILEGROWTH = 5 )

LOG ON

( NAME = 'library',

FILENAME = 'd:\librarysystem.ldf',

SIZE = 5MB,

MAXSIZE = 25MB,

FILEGROWTH = 5MB )

GO

3.1.2书本类别表建立

create table book_style

(

bookstyleno varchar(30) primary key,

bookstyle varchar(30)

)

3.1.3创建书库表

create table system_books

(

bookid varchar(20) primary key,

bookname varchar(30) Not null,

bookstyleno varchar(30) Not null,

bookauthor varchar(30),

bookpub varchar(30) ,

bookpubdate datetime,

bookindate datetime ,

isborrowed varchar (2) ,

foreign key (bookstyleno) references book_style (bookstyleno),

)

3.1.4借书证表建立

create table system_readers

( readerid varchar(9)primary key,

readername varchar(9)not null ,

readersex varchar(2) not null,

readertype varchar(10),

regdate datetime

)

3.1.5借书记录表建立

create table borrow_record

( bookid varchar(20) primary key,

readerid varchar(9),

borrowdate datetime,

foreign key (bookid) references system_books(bookid),

foreign key (readerid) references system_readers(readerid),

)

3.1.6还书记录表建立

create table return_record

( bookid varchar(20) primary key,

readerid varchar(9),

returndate datetime,

foreign key (bookid) references system_books(bookid),

foreign key (readerid) references system_readers(readerid)

)

3.1.7罚款单表建立*/

create table reader_fee

( readerid varchar(9)not null,

readername varchar(9)not null ,

bookid varchar(20) primary key,

bookname varchar(30) Not null,

bookfee varchar(30) ,

borrowdate datetime,

foreign key (bookid) references system_books(bookid),

foreign key (readerid) references system_readers(readerid)

)

3.2数据初始化

3.2.1将书籍类别加入表book_style中

insert into book_style(bookstyleno,bookstyle)values('1','人文艺术类')

insert into book_style(bookstyleno,bookstyle)values('2','自然科学类')

insert into book_style(bookstyleno,bookstyle)values('3','社会科学类')

insert into book_style(bookstyleno,bookstyle)values('4','图片艺术类')

insert into book_style(bookstyleno,bookstyle)values('5','政治经济类')

insert into book_style(bookstyleno,bookstyle)values('6','工程技术类')

insert into book_style(bookstyleno,bookstyle)values('7','语言技能类')

3.2.2将已有的图书加入system_books表中(定义相同的作者出版社的书本编号不一样)

insert

into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub,bookpubdate, bookindate, isborrowed )

values('00125415152','计算机组成原理','6','王爱英','清华大学出版社','2001-01-03','2003-11-15','1')

insert

into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub,bookpubdate, bookindate, isborrowed )

values('00125415153','计算机组成原理','6','王爱英','清华大学出版社','2001-01-03','2003-11-15','1')

insert

into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )

values('00456456','数据库原理','6','萨师煊','高等教育出版社','2007-07-02','2007-09-15','1')

insert

into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub,bookpubdate, bookindate, isborrowed )

values('12215121','C程序设计','6','谭浩强','清华大学出版社','2002-04-02','2004-03-14','1')

insert

into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )

values('9787308020558','计算机体系结构','6','石教英','浙江大学出版社','2004-10-03','2006-11-15','1')

insert

into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )

values('45456141414','数据结构(C语言版)','6','吴伟民,严蔚敏','清华大学出版社','2002-06-28','2004-01-21','1')

insert

into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )

values('5455515','中华历史5000年','1','吴强','北京大学出版社','2005-04-03','2006-05-15','1')

insert

into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )

values('015115','古代埃及','3','赵文华','北京大学出版社','2001-02-02','2002-09-15','1')

insert

into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )

values('1514514','日本文化','1','吴小鹏','北京大学出版社','2002-04-02','2004-03-14','1')

insert

into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )

values('15154656','微观经济学','5','李小刚','北京大学出版社','2000-10-03','2001-11-15','1')

insert

into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )

values('5658','影视文学','4','苏庆东','北京大学出版社','1999-02-28','2000-01-21','1')

insert into

system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )

values('565800020','探索宇宙奥秘','2','苏庆东','北京大学出版社','1999-02-28','2000-01-21','1')

3.2.3将已有图书证的读者加入system_readers表中*/

insert into system_readers(readerid,readername,readersex,readertype,regdate)

values('X05620207','陈远鹏','男','学生','2005-9-23 14:23:56')

insert into system_readers(readerid,readername,readersex,readertype,regdate)

values('X05620206','陈特','男','学生','2005-09-30 13:24:54.623')

insert into system_readers(readerid,readername,readersex,readertype,regdate)

values('X05620204','赵铭静','女','学生','2005-09-27 11:24:54.123')

insert into system_readers(readerid,readername,readersex,readertype,regdate)

values('X05620202','潘虹','女','学生','2005-09-30 13:24:54.473')

insert into system_readers(readerid,readername,readersex,readertype,regdate)

values('008415','蒋伟','男','教师','2004-04-30 09:24:54.478')

insert into system_readers(readerid,readername,readersex,readertype,regdate)

values('001456','李叶风','女','教师','2004-04-30 09:24:54.478')

3.2.4添加已借书读者的记录,同时将在已借出的借阅标记置0*/

insert into borrow_record(bookid,readerid,borrowdate)

values('00125415152','X05620202','2007-09-27 11:24:54.123')

update system_books

set isborrowed=0

where bookid='00125415152'

insert into borrow_record(bookid,readerid,borrowdate)

values('00125415153','X05620206','2007-12-27 08:26:51.452')

update system_books

set isborrowed=0

where bookid='00125415153' and isborrowed='1'

insert into borrow_record(bookid,readerid,borrowdate)

values('5455515','X05620207','2007-12-27 08:26:51.452')

update system_books

set isborrowed=0

where bookid='5455515' and isborrowed='1'

insert into borrow_record(bookid,readerid,borrowdate)

values('015115','X05620204','2007-10-21 12:11:51.452')

update system_books

set isborrowed=0

where bookid='015115' and isborrowed='1'

insert into borrow_record(bookid,readerid,borrowdate)

values('15154656','001456','2007-12-28 14:11:51.312')

update system_books

set isborrowed=0

where bookid='15154656' and isborrowed='1'

insert into borrow_record(bookid,readerid,borrowdate)

values('565800020','008415','2007-08-28 15:11:31.512')

update system_books

set isborrowed=0

where bookid='565800020' and isborrowed='1'

4.结果数据处理

4.1单表查询

4.1.1表book_style中查询演示:

图4-1 表book_style中内容

4.1.2表system_books中查询演示:

图4-2 表system_books中内容

4.1.3将已有图书证的读者加入system_readers表中结果查询:

图4-3 表system_readers中内容

4.1.4借书纪录表borrow_record结果查询:

图4-4 表borrow_record中内容

4.2超期处理

4.2.1现在对已有借书证的读者进行查询借书是否超期(这里归定30天):

说明:当前的getdate()以日期为2008年1月6日计算

图4-4 选出借出超过30天的读者

4.2.2同时也可以用语句超过天数的读者进行罚款,加入到罚款单里面,一天以0.3元扣除计算:

SQL语言:

insert into reader_fee(readerid,readername,bookid,bookname,bookfee,borrowdate)

select system_readers.readerid 读者借书证编号 ,readername 读者姓名,

system_books.bookid 书籍编号,bookname 书名,

0.3*(Datediff(day,convert(smalldatetime,borrowdate),getdate())-30) 超过时间天数,

borrowdate 借书时间

from borrow_record ,system_readers ,system_books

where system_readers.readerid=borrow_record.readerid

and system_books.bookid=borrow_record.bookid

and Datediff(day,convert(smalldatetime,borrowdate),getdate())>=30

(所影响的行数为 3 行)

select readerid 书读者借书证编号,readername 读者姓名,

bookid 书籍编号,bookfee 超期罚款

from reader_fee

形成各本书对应的罚款金额,按0.3元每天算

图4-5查看罚款单

4.3还书 *** 作

4.3.1现在对某一读者进行还书 *** 作:

1.首先还书要在还书纪录中添加一条还书纪录

2.其次删除相应书本的借阅纪录

3.最后在书库中标记该本书为1,表示归还了未借,可供其他读者借阅

说明:学号为X05620207 姓名为陈远鹏 借阅的565800020书籍编号进行归还。

SQL语言:

insert into return_record(bookid,readerid,returndate)

select bookid,readerid,getdate()

from borrow_record

where bookid='565800020'

(所影响的行数为 1 行)

delete

from borrow_record

where bookid='565800020'

(所影响的行数为 1 行)

update system_books

set isborrowed=1

where bookid='565800020'

(所影响的行数为 1 行)

三个表的结果如图:

图4-6 增加了565800020纪录

图4-7 565800020这本书在借书纪录里没有了

图4-8 标记设为了‘1’

说明:这本书重新回到未被借出标记为1(注,相同的书其编号是不同的)

其结果为还书成功,相应的各表都有变化,对于罚款单通过借阅记录表borrow_record中更新。

4.4借书 *** 作

4.4.1查询未被借出的书本:

图4-9

4.4.2查询已被借出的书本:

图4-10

4.4.3申请借书证:

SQL语言:

Insert into system_readers(readerid,readername,readersex,readertype,regdate)

values('X05620211','小华','男','学生',getdate())

图4-11

说明:查询相应的纪录增加了小华这样一个读者的借书证纪录:

4.4.4注销借书证:

说明:

1.在注销之前执行所有的还书过程,就是上面写到的所述SQL语句,然后执行

delete from system_readers where readerid=' X05620211',

2.小华借书证纪录就被删除了,同时要删除和小华归还纪录的内容

delete from return_record where readerid=' X05620211',

4.4.5查询所有书所对应的类别:

图4-12

4.5书籍状态

4.5.1查询所有工技术类的书:

图4-13

4.5.2查询清华大学出版社出版的书:

图4-14

4.6读者状态

4.6.1查询什么人借了什么书:

SQL语言:

select readername 读者姓名,bookname 书籍名称

from borrow_record,system_books,system_readers

where system_readers.readerid=borrow_record.readerid

and system_books.bookid=borrow_record.bookid

图4-15

4.6.2指定潘虹借了什么书:

SQL语言:

select readername 读者姓名,bookname 书籍名称

from borrow_record,system_books,system_readers

where system_readers.readerid=borrow_record.readerid

and system_books.bookid=borrow_record.bookid

and readername='潘虹'

图4-16

5.结束语

5.1课程设计心得

通过此次数据库的课程设计,真正达到了学与用的结合,增强了对数据库方面应用的理解,对自己今后参与开发数据库系统积累了不少经验,在实验过程中,从建立数据开始,对灵据库设计理念及思想上有更高的认识,从需求分析,到概念设计和逻辑设计,E-R图的表示,数据字典的创建,懂得了不少有关数据库开发过程中的知识,在实验中建表,及其关系模式,关系代数的建立及理解,将SQL语的查询语句用得淋漓尽致,增强了自己在数据库中应用SQL语言的灵活性,其中包括,插入、删除、修改、查询,牵涉表和表之间的联系,主建与外主键的定义,约束项的设置,使逻辑更严密,在学习过程中,我也能过上网查了不少资料,也看了一些别人设计的图书馆管理信息系统的设计报告,学以致用,自我创新,独立完成了这份自己的报告,从中在学到用,从用又到学,不断修改,系统更新。虽然不能达到完善系统,但也做到了尽善尽美,加强理论学习对完善系统会有很多帮助,不管怎么说,对这次做的课程设计自己觉得还算满意。

数据库原理及应用课程设计

一、课程设计的目的

《数据库原理及应用》课程设计是计算机科学与技术专业集中实践性环节之一,是学习完《数据库原理及应用》课程后进行的一次全面的综合练习。本课程设计主要在于加深学生对数据库基础理论和基本知识的理解,掌握数据库应用系统设计开发的基本方法,达到进一步使学生综合运用所学知识和增强实际动手能力的目的。

二、课程设计的任务与要求

要求学生根据自身对题目的理解情况,从给定的设计题目中选择一个,以MS SQL Server作为后台数据库平台,以PowerBuilder作为前台开发工具,完成一个小型数据库应用系统的系统的分析、设计和开发。

三、课程设计说明书

仓储管理系统

对于一个以生产或经营产品为主要业务的单位来说,仓库管理系统至关重要。高效方便的仓库管理系统,可以为生产经营提供坚强的后盾和有力的支持。效率低下甚至是混乱不堪的仓库管理系统,无疑会成为企业健康发展的拖累甚至是枷锁。使企业发展动力不足。本次数据库设计实现了仓库管理的高效化、电子化。通过本系统可以方便地实现仓库管理中的货物登记、出库入库等 *** 作,使仓库管理井井有条。

1系统需求分析

1.1系统功能需求分析

仓库管理系统主要实现对库存商品的管理,对商品出库、入库的管理,和对仓库管理系统维护的功能。具体要实现的功能包括:

1)库存商品管理

查看数据库中商品的名称、编号、单价等信息。

2)商品出库、入库管理

入库、出库单纪录本次入库、出库的货物名称、数量,入库、出库的时间、商品单价以及总价,入库、出库的经手人等。

3)商品的查询

输入商品的编号或者商品的名称查询信息

4)用户管理

用户可以修改登录密码

1. 2数据需求分析

1.员工(ID ,姓名,密码,权限)

2.商品(商品名,商品编号,所属类,单价)

3.出货表(商品名,商品编号,数量,总价,经手人)

4.入货表(商品名,商品编号,数量,总价,经手人)

5.查询(商品名,商品编号,数量,单价)

根据上面的关系我们需要的数据基本上就上面所列出的数据。

2 系统总体设计

1)库存商品管理

查看数据库中商品的名称、编号、单价等信息。

2)商品出库、入库管理

入库、出库单纪录本次入库、出库的货物名称、数量,入库、出库的时间、商品单价以及总价,入库、出库的经手人等。

3)商品的查询

输入商品的编号或者商品的名称查询信息

4)用户管理

用户可以修改登录密码

2.1系统总体结构设计

2.2.1 E-R图

2.2.2 关系模式

1.员工(ID ,姓名,密码,权限)

2.商品(商品名,商品编号,所属类,单价)

3.出货表(商品名,商品编号,数量,总价,经手人)

4.入货表(商品名,商品编号,数量,总价,经手人)

5.查询(商品名,商品编号,数量,单价)

2.2.3 数据表

“员工信息表”“商品信息表”“出货单”“进货单”的主键分别是:ID、商品编号、商品编号、商品编号。

员工信息表

商品信息表

出货单

进货单

3.系统实施

工作界面PB9.0,以下是我制作过程和运行中的一些截图:

首先建立PB与SQL的数据链接:如果链接不成功,返回对以话框“数据库连接错误,经检查后再试!”

然后点Preview选项会d出如下窗口:

一、 工作界面截图:

分别建有:workspace、application、windows、dw_、da_等。

工作时检测连接数据库是否正常的程序代码:

// Profile q

SQLCA.DBMS = "ODBC"

SQLCA.AutoCommit = False

SQLCA.DBParm = "ConnectString='DSN=仓库UID=PWD='"

connect

open(w_enter)

二、 运行结果的截图:

这个是我运行后的第一个用户界面,在界面中输入管理员ID和密码。我的管理员ID 和密码分别为 1,123.点击确定进入menu下一界面。

若ID和密码分别输入1,1234,则跳出以下界面:

确定按钮所对应的代码如下:

//定义两个变量

string password,userid

password=sle_2.text

//检索用户名和密码记录

SELECT "员工信息表". "ID",

"员工信息表"."密码"

INTO :userid,

:password

FROM "员工信息表"

WHERE "员工信息表"."ID" =:sle_1.text and "员工信息表"."密码" =:sle_2.text

//判断用户输入的用户名是否正确

if sqlca.sqlcode<>0 then

messagebox("错误!","ID或密码错误,请重新输入!",exclamation!,ok!,2)

else

messagebox("通过验证!","ID和密码正确,欢迎您使用本系统!",Information!,ok!,2)

open(w_main)

close(w_enter)

end if

取消按钮所对应的代码如下:

close(parent)

//关闭登录窗口

三、 menu界面的截图:

在本界面中我们通过点击菜单栏上的不同管理按钮来实现管理和 *** 作的功能。

进货—进货单

出货—出货单

库存—蔬菜类

—水产类

—肉类

系统维护—修改密码

查询

四、 进货的截图如下:

在本界面中, *** 作员可以输入进货信息

五、 进货的截图如下:

在本界面中, *** 作员可以输入出货信息

六、本界面是实现用户更改自己的密码的界面

用户在登陆后根据上面的提示可以更改自己的密码。

程序代码如下:

string oldid

string oldp

string newp1

string newp2

oldid=trim(sle_1.text)

oldp=trim(sle_2.text)

newp1=trim(sle_3.text)

newp2=trim(sle_4.text)

if len(oldp)=0 or isnull(oldp) then

oldp=space(10)

end if

if len(newp1)=0 or isnull(newp1) then

newp1=space(10)

end if

if len(newp2)=0 or isnull(newp2) then

newp2=space(10)

end if

select "operator"."password"

into :oldp

from "operator"

where "operator"."password"=:oldp

if sqlca.sqlcode<>0 then

messagebox("提示","原密码不正确!")

sle_2.text=""

sle_2.setfocus()

return

end if

if newp1<>newp2 then

messagebox("提示","两次新密码输入不同!")

sle_4.text=""

sle_4.setfocus()

return

end if

Update "operator"

set "password"=:newp1

where "operator"."operator_id"=:oldid

if sqlca.sqlcode<>0 then

rollback

messagebox("提示","密码更正错误! 请重设!")

return

end if

gs_password=newp1

commit

messagebox("提示","密码修改成功!")

七、本 *** 作可以看仓库里的商品并可对其进行插入和删除

八、从仓库查询所需要的商品

4 系统评价

系统的功能基本上已经实现,但是还是不够完善。但是在使用的时候还是能给用户带来一定的方便的。仓库的进货和出货在本系统中能直观的以表格形式反映出来,便于 *** 作员的使用和决策者的管理。

4.1 系统特色

本系统要求用户进行验证之后才能进入相应的界面。有利于保护数据库的安全,不被非法登陆使用。对于仓库内货物的进出管理要求严格,即进出货时必须填写相应的进出货单据。便于企业管理查看账目,保障了企业的稳定运行。通过本系统可以方便地实现仓库管理中的货物登记、出库入库等 *** 作,使仓库管理井井有条。在查看数据库时可以方便的删除数据库中冗余的信息和添加新的信息。

4.2 系统不足及改进

这个系统基本上实现了一些简单的对系统所涉及表的更新、增加和删除的功能。也实现对用户登陆的安全上有了一定的限制,只有在正确输入ID和密码的时候才能进入系统。远没有达到大型公司的仓储物资管理的要求,所创建的数据库框架比较简单,各表之间的联系也过于简单,没有添加外键相互约束,用POWER BUILDER做出来的系统过于简单、单调,需要进一步深入的调整优化,将各表之间的关系紧密联系起来,相互制约,保证数据库中数据的添加、删除、更新,安全有序。 *** 作窗口还需要进一步的进行美化,使用户在使用中更赏心悦目。

5 课程设计心得

这次课程设计的主要目的是掌握数据库应用系统分析设计的基本方法,基本掌握PowerBuilder,进一步提高分析解决问题的综合能力。通过这次课程设计,我基本掌握了以上要求。但只有两周的课程设计时间,时间比较仓促,所以开发的系统不是很完善,有一些功能未实现,但是仓库管理的基本功能均已实现。以前对数据库的很多知识认识都不深刻,做过这次课程设计之后,我对数据库的知识有了一个比较系统的了解;比如:对表内一些字段的约束,关系等的运用已经比较熟练。这个课程设计使我巩固了数据库的知识。

对于PowerBuilder也有了一定的了解,由于用的不多,所以运用的不是很熟练。刚开始的时候,对于PowerBuilder的语法,用法等一系列知识都不熟悉。当我基本完成此系统开发的时候,我发现其实也没有那么难,在未做之前我还害怕做不出来。经过对这个系统的开发,在开发过程中遇到但也解决了很多问题,所以说我们不能惧怕有困难而不去接触认识它,我们要知难而上,只有这样我们才能成长,才能有所发展。

这认为最难的一部分是用户查看数据库时通过插入删除按钮对数据库的更改,因为我们在文本框中输入的数字是被默认为字符型的,我在其中使用了integer(string)这个函数把字符型的进行了转换,但是在使用的过程中并不能像我所想像的那样有用。因为时间有限,所以这个问题还没有完全的解决。

通过这次数据库课程设计加深我对数据库基础理论和基本知识的理解,掌握数据库应用系统设计开发的基本方法,达到进一步使我综合运用所学知识和增强实际动手能力的目的。

我会继续学习数据库的知识,学习PowerBuilder的知识,只有通过不断的学习充实自己,才能让自己有所得。只有了知识的积淀,才能为自己的发展铺平道路!

可以参考一下啊,最终还是要自己做的吧。。仅供参考。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6617985.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-25
下一篇 2023-03-25

发表评论

登录后才能评论

评论列表(0条)

保存