建立一个简单的数据库系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《信息系统与数据库技术》技术实践

1•系统目标

本系统支持图书订购,图书查询,图书折扣等功能,并具有信息管理,事务处理和决策支持的系统特点。

2. 需求分析

2.1业务需求

网上书店主要有2类角色:客户和店长。各自业务如下:

客户能图书查询、浏览(包括浏览本书信息和相关图书列表),查看个人客户信息。

店员能维护图书基本信息、包括增、删、改等;图书折扣管理;图书信息汇总。

2.2数据处理需求

系统涉及的数据源有图书数据,客户数据,订书数据等表单。

2.3系统功能结构图(如图1)

图1:网上书店系统功能结构图

3. Book 图书表:存储图书基本情况,如图 4

3. 数据库设计

3.1数据库概念设计

系统主要有两个实体:客户和图书,它们通过“订购”活动连接在一起,分析

图2 :网上书店的 E-R

3.2数据库逻辑设计

3.2.1将数据库的概念模式图转化为以下 2个模式:

客户(客户编号,姓名,年龄,性别,电话,职业) 图书(图书编号,书名,作者,价格)

3.2.2数据库物理设计

1. 下面给出SQL Server 下的网上书店数据库物理设计的关系模型设计、完整性

约束设计和索引选择。

2. Customer

客户表:存储客户基本信息

,如图3

字段名称 字段说明 类型定义 属性限定 索引

关系(外键)

CustomerCode 客户号 Char(8) Primary Key 主索引

Name 客户姓名 Varchar (16) Not Null V

Sex

性别

Char (2)

Not Null "男"或"女"

Job 职业 Char(12) Not Null

Age 年龄 Char (10) Not Null

Telephone

联系电话

Varchar (40)

定义各实体的属性,建立实体联系模型的 E-R 图如图2所示

客户

字段名称 字段说明 类型定义 属性限定 索引 关系(外键)

BookCode 书号 Char(8) Primary Key 主索引

BookName 书名 Varchar(60) Not Null

V

Author 作者 Char(20) Not Null

BookSort 图书类别 Char(8)

V

Price 价格 Numeric(4,1) Not Null

Discount

折扣

Numeric(2,1)

Not Null Default 1

4Book

323数据库关系图(如图5)

图5

324数据库应用对象设计

充分利用SQL Server 所提供的数据库应用对象支持应用程序的开发,在数据 库应用程序中使用存储过程可以简化客户端程序,

提供系统运行效率,并且减少

网络信息传输量。视图建立在 SQL Server 服务器端,可以简化客户端程序和提 高访问安全性。 视图设计:

1•视图一图书信息汇总及图书信息查询

适用于图书信息查询,其视图的结构如图 6。视图的定义语句如下:

Public Class Form3

Public mybind As BindingManagerBase

Private Sub Form3_Load ( ByVai sender As System.Object, ByVal e As System.EventArgs ) Handles MyBaseLoad

MeBookTableAdapter.Fill ( Me 购书管理 _DataDataSet.Book ) mybind = BindingContext (DataSet11, "Book")

mybind.Position = 0

mybind.Position = mybind.Position - 1 mybind.Position = mybind.Position + 1

鼻Z 护*

lOHilfl

B^okCode

BookName

Author Price

Cusi^mtrCodlt

Name

Sex

Job

A^e Telephone

Number Count

gj

Count

BoojkCode BookHanie

Price

mybind.Position = mybind.Count - 1 SqlDataAdapter1.Fill(DataSet11, mybind = BindingContext(DataSet11, DataGrid1.DataSource = DataSet11.Book End Sub

Button5.Click

mybind.RemoveAt(mybind.Position) End Sub End Class

图书汇总表

Fri ce

*

1000 西游记 吴质屈 20

2000 红楼梦 曹雪睹 50

3000 笑面人 雨果 100

4000

四沢级词汇

咋杂

40

"Book")

"Book")

Private Sub Button1_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

Button1.Click

mybind.Position = 0

DataGrid1.CurrentRowlndex = mybind.Position End Sub

Private Sub Button2_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

mybind.Position = mybind.Position - 1

DataGrid1.CurrentRowIndex = mybind.Position End Sub

Private Sub Button3_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

mybind.Position = mybind.Position + 1 DataGrid1.CurrentRowIndex = mybind.Position End Sub

Private Sub Button4_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

mybind.Position = mybind.Count - 1

DataGrid1.CurrentRowIndex = mybind.Position End Sub

Private Sub DataGrid1_Click( ByVal sender As Object , ByVal e As System.EventArgs)

Handles

DataGrid1.Click

mybind.Position = DataGrid1.CurrentRowIndex End Sub

Private Sub Button6_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click

mybind.AddNew() End Sub

Private Sub Button5_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

相关文档
最新文档