称为ER模型的操作,包括实体类型、联系类型和属性的分裂、合并和增删等等。
3、利用ER方法的数据库概念设计
利用ER方法进行数据库的概念设计,可以分成三步进行:首先设计局部ER模式,然后把各局部ER模式综合成一个全局ER模式,最后对全局ER模式进行优化,得到最终的ER模式,即概念模式。
设计局部的ER模式
通常,一个数据库系统都是为多个不同用户服务的。各个用户对数据的观点可能不一样,信息处理需求也可能不同。在设计数据库概念结构时,为了更好地模拟现实世界,一个有效的策略是"分而治之",即先分别考虑各个用户的信息需求,形成局部概念结构,然后再综合成全局结构。在ER方法中,局部概念结构又称为局部ER模式,其图形表示称为ER图。
实体和属性的定义如下:
站点(站点编号,站点名称,站点类别)
线路(线路编号,始发时间,终发时间,备注)
线路站点对应(线路编号,站点名称)
第四章系统实现
4.1程序主界面模块
本系统可以查询各个车次的各个站点,用户可以清楚该线路各个站点的名称,本系统操作简单,适合大众用户使用.
本模块界面如下所示:
主要代码如下:
PrivateSubCommand1_Click()
IfCombo1.Text=""Then
MsgBox"您没有输入要查询的车次!",vbInformation+vbOKOnly,"提示!"
Combo1.SetFocus
ExitSub
EndIf
gcaf=1
Cbm.Visible=False
Label5.Visible=False
MSF1(0).Visible=True
MSF1(1).Visible=False
MSF1(2).Visible=False
txtsql="select*frombuswherenumber='"&Trim(Combo1.Text)&"'"
showdata0
Label7.Visible=True
EndSub
PrivateSubCommand2_Click()
Command4.Caption="查找经过站点最小的线路"
gcaf=2
Ifcbs.Text=""Then
MsgBox"您没有输入要查询的起点站!",vbInformation+vbOKOnly,"提示!"
cbs.SetFocus
ExitSub
EndIf
IfCbe.Text=""Then
MsgBox"您没有输入要查询的终点站!",vbInformation+vbOKOnly,"提示!"
Cbe.SetFocus
ExitSub
EndIf
IfCbm.Visible=FalseOrCbm.Text=""Then
digein=0
showSEdatacbs.Text,Cbe.Text,0
digeitemp=digein
Label7.Visible=True
Else
IfCbm.Text<>""Then
Label7.Visible=True
EndIf
digein=0
showSEdatacbs.Text,Cbm.Text,1'把转发站作为终点站进行查询
digeitemp=digein
digein=0
showSEdataCbm.Text,Cbe.Text,2'把转发站作为起点站进行查询
digeitemp=digein
EndIf
EndSub
PrivateSubCommand3_Click()
Loadmap
map.Show
EndSub
PrivateSubCommand4_Click()
'以下代码写得不是很好,有点乱的感觉
'其思路是先统计要经过的车站个数,再把最小车站个数的线路显示出来
'还有要注意的一点是在显示出了最近车站的线路后,为了返回开始查询到的线路,我用了MSF1(i)做为存储
DimintminAsInteger
DimintcountAsInteger
Dimalloks()AsInteger
DimrsAsInteger
DimoksnAsInteger
DimstrbijAsString
DimbfinAsBoolean
intmin=10000
Ifgcaf=2Then
IfCommand4.Caption="查找经过站点最小的线路"Then
Command4.Caption="返回"
oksn=0
IfMSF1(0).Visible=TrueThen
ReDimalloks(MSF1(0).Rows)
MSF1(1).Clear
MSF1(1).Rows=MSF1(0).Rows
Fork=0ToMSF1(0).Rows-1
intcount=9999
bfin=False
Fort=0ToNC+2
IfMSF1(0).TextMatrix(k,t)=""Then
ExitFor
EndIf
MSF1(1).TextMatrix(k,t)=MSF1(0).TextMatrix(k,t)
Ifbfin=FalseThen
Ifcbs.Text=MSF1(0).TextMatrix(k,t)OrCbe.Text=MSF1(0).TextMatrix(k,t)Then
Ifintcount=9999Then
intcount=0
Else
intcount=intcount+1
bfin=True
EndIf
Else
Ifintcount<>9999Then
intcount=intcount+1
EndIf
EndIf
EndIf
Next
MSF1(1).TextMatrix(k,NC+2)=MSF1(0).TextMatrix(k,NC+2)
alloks(oksn)=intcount
oksn=oksn+1
Ifintcount9999Then
intcount=intcount+1
EndIf
EndIf
EndIf
Next
MSF1(0).TextMatrix(k,NC+2)=MSF1(1).TextMatrix(k,NC+2)
alloks(oksn)=intcount
oksn=oksn+1
Ifintcount9999Then
intcount=intcount+1
EndIf
上一篇:
VBAC售楼管理系统(论文和程序)
下一篇:
对硕士毕业生迁移失业目的地的实证研讨