数据库工程作业.docx
- 文档编号:6191373
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:25
- 大小:173.27KB
数据库工程作业.docx
《数据库工程作业.docx》由会员分享,可在线阅读,更多相关《数据库工程作业.docx(25页珍藏版)》请在冰豆网上搜索。
数据库工程作业
,并填写工程作
SQLServer、
说明
OS相关
数据库工程作业
要求:
根据第一次作业第一题的设计,完成一个小型的数据库信息管理系统(或部分功能)
业报告;程序和报告请在规定时间之内上传。
矚慫润厲钐瘗睞枥庑赖賃軔。
开发模式(B/S或C/S)、开发高级语言任选,后台数据库使用大型数据库管理系统(
Oracle等),不要使用桌面数据库。
聞創沟燴鐺險爱氇谴净祸測。
报告中所列举的四种操作都要求涉及到两张以上的数据表,每种操作举一个例子即可。
所列举的操作应涵盖事务、触发器、视图、存储过程的应用。
作业成绩按照报告中的标准评分,程序只实现报告中涉及的部分即可。
工程作业报告
项目信息
学号
1姓名11专业[
项目名称
唱片销售系统
开发语言
VB6.0后台数据库1SQLserver2000
必备环境
WindowsXPSP2
系统配置
(10分)根据实际需要给出配置的具体步骤,可以粘贴屏幕截图,不涉及的部分写无”;
(10分)高级语言连接数据库一般都会使用连接串,分析该字符串的各个部分。
启动SQLServer服务管理器
创建数据库:
打开查询分析器”,选择系统数据库master并执行唱片销售系统.sql'建立数据库cpxs,执行结果如下:
[I在删除数据库文件’C:
乜E・LDF'4
正在册橡簸榕']^文禅C;\cpKsData.MDF*a
CREATEDATABASE进程正在磁盘cpKS.Data上付配5*00MB的空间*
CKEATEDATABASEiS程正左磁盘’<:
皿3丄口『上分K1.001«B的空间。
1.注册数据库
控制面板->管理工具->数据源->用户DSN注册cpxs数据库
添加->选择SQLSERVER-〉名称份别为cpxs)->服务器选择local->windoesNT验证->分别更变默认数据库(对应选择cpxs)
程序
相关
坪尸数輛遊⑪:
名称
用户MMI采抗却]丈件ISK|呃动程序I跟臨1连接池I关于1
cpxs
'dSA2EFilas瞰*1Files
MSAcctisDatabaseVisualroxFrcDatableVisTialFojeFwTatL»s
打動程序
SQLS^nrarMicnoEoft,Midggft;MicTO'Soft,MiCTOsoft'MicTO'Soft'
in
连接串分
析(10)
kccasEd£A3£DriirarEh^sItriy^rk1i,
C*.mJb
Brivtr
Brivtr
Vis口ilVisua
Driver
FoxFro
FakFito
配置O
躅盪聽酵麟勰嚅藹黠嚳ii翹誉■用
确定I取消I应Ji②I帮助I
在唱片销售系统”文件夹下打开工程文件工程1.vbp”,编译执行,进入登陆界面。
登陆系统界面
Jfl户类型
開户名
密玛
登陆
关闭
使用预设帐号进入系统:
管理员帐号:
admin密码:
123
会员帐号:
user密码:
123
序号
名称
Provider
IntegratedSecurity
功能说明
取值
应用程序使用SQLOLEDB提供程序连接到SQLServer
使用windows集成身份验证
SQLOLEDB.
SSPI
3
PersistSecurityInfo
ADO在数据库连接成功后不保存密码信息
False
4
InitialCatalog
连接对应数据库
cpxs
5
DataSource
连接本地数据库服务器
(local)
备注
数据库设计
说明
(10分)按照数据表的创建顺序,依次给出所涉及数据表的信息,其中参照字段以(字
段1,字段2,……,字段n)”的形式给出,被参照字段以表名(字段1,字段2,……,字段n)”的形式给出;
(10分)一般DBMS都可以为数据库生成关系图,请将该图片截屏并粘贴到表格中。
数据表
(10)
创建顺序
数据表名称
主键
参照属性
被参照表及属性
1
manager_info
管理表
UserId
无
无
2
base_info
CD基本信息表
CDTrackName
无
无
3
card_info
充值卡表
CardId
无
无
4
custom_info
用户表
CustomId
CDTrackName
base_info(CDTrackName)
CustomId
manager_info(Userld)
5
Qiugou求购关系表
BuyId
BuyCDName
base_info(CDTrackName)
BuyId
manager_info(UserId)
关系图
(截屏)
(10)
备注[添加操作
说明
(1分)简要说明该操作所要完成的功能;
(3分)该操作的输入数据以及输入数据应该满足的条件,如:
数值范围、是否为空;
(3分)该操作会修改字段(以表名.字段名”的形式给出),以及修改规则,如:
新数值的计算方法、在何种条件下予以修改等;
(4分)实现该操作的关键代码(高级语言、SQL),截图即可;
(4分)如何执行该操作,按所述方法能够正常演示程序则给分。
功能描述
(1
分)
添加用户(举例)添加新唱片添加唱片预定信息
输入
(3
分)
数据
约束
CX(用户名)
Char类型,长度为10,主键
123(密码)
Char类型,长度为10,,非空
用户(用户类型)
ICHAR(IO)NOTTOLLCHECK(UserEindIN「管H员'「州户TJJ
更改字段
(3
分)
字段
规则
Managerinfo.Userld
新建用户名
Manager_info.UserKind
新建用户类型
Managerinfo.UserPsw
新建口令
代码
(4分)
(截屏)添加用户
Dimconstring:
AsString
Dimsq^lsouEceAsString
DiihflagAsBoolean
constriTi£="ProvidcE=SQLOLEDB,1:
IntegratedSe'Ciiri-ty=SSPr.PersistSecflag=False
IfTextIsEmptyThenExitSub
crin.OpenconString
IfCir>tioi*i2.Value=TrueThen
Eql_£ource="select*fromman直ger_irrfo*
TRecordset.CursorLocation=adUseClient
TRecards^t.Opsnsql—S&iircs,cim雋adOperiStatic,idLocbOptimisticflag=True
EndIf
IfOptionl.Value=TrueThen
3cil_source=*select水frommanager—info*
TRecordset.匚ursOrLoCation=adUse匚1lent
TRecordset.Open3(il_3&tirce,erm.,adOpeiiStalic,adLockOptLuiLSticEndIfIfflagItuen
TRecordset.AddlTe-w
TEecordset.Fields(0)=
TRecardset.Fields
(2)=
TRecordset.Fields
(1)=
TRecordset.UpJate
MsgBcJH"菅ifiR添加我功S
Texts(0).Test=""
Textx
(1)_Text="*
TeHtK
(2)_Tezt=
Else
TRecordse+.Mo^^eLaEt
i=TRecordset.FieldsC1)
TEecordset,AddKe-w
TRecordset.Fxelds(0^=
TRecordset,FieldsCZ>=
TEecordsetfFields(1=
'IRecordset.Fields
(1)
°IRecordset,Fields(4)
*7Recordset.Fields(5)°IKecordset,Fields(J)
TRec^rdsetfUpdate
sql-H日耐er=^select*
HRecordset.CursorLocartion=
HRecordset.Opensql.menber,
HRecordset.AdiKe-w
KRec^jrds^tfFields(0>=TrimdestK(0).Test)
MRecordset.Fields
(1)=Trim(Texts
(1).T&xt)
^TrtRecordset.Fields
(1)=■用户"
KRecordset.lIpJate
MsgBw"会员添加咸功SvibiOEOnly十vljlnf□rmation^"信息提示"Textx(0).Text=""
Textx(l).Text二""
Testx(£)*Test=""
EndIf
cm.Close
Privategx直sNewADODE.Eecordsat
PrivateSubCoiiuiLaiidl_Click0
DimconStEingAsString
Dims(il_sourceAsStting
conString="Prowi边er=SQLOLEDB・1;brtegEatedSecurity=SSPr;PeisistSecucnn-OperLc^nString
sql_soiirce=^select*frojibase_info*
gH_CursorLocation=adUseClient
£31.Opens(il_soiircG^enn,adOpenStatic^adLockOptiitistic
AddHew
Fields(D)
ax-Fiells⑴
g:
^.Fields
(2)
Fields(3)
gx.Fields(4)
gx.Fields(E)
Text1.TextTgtZTeitTexts.TextTea+d,rsKtTtxtb.TextTtxtfi,Text
*gK.Field豊(S)=TextT.Text
*Sit-Fields(7)=text3.Text
gx”Update_
MsgBoz"游戏僧息滋加成功!
",vbOXOnly+vbinfariiLa-tion,■提示"cnn.CloseEftdSub
添加唱片预定信息
PrivateSubCommand1_ClickC)
AdodcLConnedionStling=*Provider=SQLOLEDB.1;IntegratedSecurit7=SS
Adodcl.RecordSource="select*fromqiugou"
AdodeLRefresh
IfTestLTest=""OrTeKt2,Teat=OrTeKt3.IsKt=Then
Ms^Box"不能衙空,请重新输入!
*
Text1,SetFocus
Else
Adodcl.Recordset,Addlfev
Adodcl.Recordset.FieldsC*求购用户名*)=Text1.TskI
Adodcl.Recordse匕Fields「隶购唱片茗"j=
Adodcl.Recordset,Fields量"i=Text3,Test
Adodcl.Recordset,UpdateMsgBox"求购唱片己成功添加!
*
Testi.Text=""
Text2.Text二""
Text3*Text=""
EndIf
EndSub
Text?
.Text
(
分)
Us&rld
[UserKind
lUserF^w
►
admin
管理员
123
CuLcerXp
123
口s*r
123
Manager_info表中数据:
添加新用户:
a
滚卿用尸
J
用尸类型
r莒理员
确定
Userid
lUserEind
lUserFsw1
上
admin
管理员
123
C^icerXp
123
ex
123
user
123
添加后manager_info表中数据更新:
备注
删除操作
功
能
描
述
(
分)
(1分)简要说明该操作所要完成的功能;
(3分)该操作的输入数据以及输入数据应该满足的条件,如:
数值范围、是否为空;
(3分)该操作会修改字段(以表名•字段名”的形式给出),以及修改规则,如新数值的计算
方法、在何种条件下予以修改等;
(4分)实现该操作的关键代码(高级语言、SQL),截图即可;
(4分)如何执行该操作,按所述方法能够正常演示程序则给分。
删除用户(管理员权限)
删除唱片(管理员权限)
使用ado方法首先创建一个recordset对象gx,sql_source语句负责选择满足条件的元组
(DataGrid控件选中的元组)并用gx打开,执行recordset对象的Delete方法删除所选元组。
(截屏)删除用户(管理员权限)
FrivateexAsHe,ADODB.Recordget
PrivateSubCoiiRaridl_Click()
DinisDelAsIntegtr
DinconstrinsAsString
conString="Providei=SQLOLEDE.1;IiirtegratedSecurity=SSPl;PersistSecurityInfo=False.InitialCartalog^cps
cnriiOpenconStfing
sql_source='^selectUserl(l,UserKindfrommanager_infovhereUserld='"4Trim(Data^rridl.Columns[0))&
gx.CursorLacation=adUseClient
gx.Openjql_jourc9jcnn』adOpsnStatiCjadLockCptimisti匚
IfAdodcl.Recordset.HOFOrAdode1.Recordset.EOFThen
HseBoh"谙选择一名坤户笃vbinformation,”佶息提示"
Els«
isDel=IsgEoxC是否删除所选择的用户vbYesSo+vhQue3l:
ion+vbDefaultEutton2j"是否刑除")
IfisDel=vbYesThen
Delete
gx.UpdatE
MsgBoxW除咸功I",vbinformationj提刹
EndIf
EndIf
AdodchRefresh
cnn.ClcsE
EndSub
PrivateSubComjiiand2_Click()
DimisDelAsInteger
DimcanStringAsString
conString=Trovider^SQUOLEDE.1;IntegratedSecurity=SSPI:
PersistSecurityInfo=False;InitialCa-cnn.OpenconString
sql_source=""select*frombase_infowhereCDTrackNauie^^&Trim(DataGridl.Columns(0))tgK.CursorLocation=adUseC1ient
gK.Opensql_sourcejerm,adOpenStatiCjadLockOptimistic
IfAdodcl.Recordset.BOFOrAdode1.Recordset.EOFThen
MsgBoK■请选择一款唱片",vblnformationj"信息提示"
Else
isDel=HsgBoKC是否■]除所选择的唱片vbYesNo+vbQuiestion+whiDef31111±£1过七onZ"是否
IfisDel=vbYesThen
gi.Delete
gi.Update
■sgjiox"删除成功!
“,vbinformatiom,"信息提示"
EndIf
EndIf
Adodcl.Refresh
erm.Close
EndS~nh
[[■=.S
所有唱片资斜:
程
序
演
示
(
分)
CCTracl^ama
SiS-KerlTarrte
WiisLcStyie
Frice
範特E
Jay
航
10
T
■EM
Jay
MS
10
同名肯辑
KO
£0
J甥
10
星否《除
、[/昙否删條所选择的唱片
底遑①"”11否四I
删陰0I
遞回[BJ
I口丨回Issr
所有唱片资科:
修改©
遞回⑥
删除用户与删除唱片情况类似。
更新操作
说明
功能描述(1分)
(1分)简要说明该操作所要完成的功能;
(3分)该操作的输入数据以及输入数据应该满足的条件,女口:
数值范围、是否为空;
(3分)该操作会修改字段(以表名•字段名”的形式给出),以及修改规则,如新数
值的计算方法、在何种条件下予以修改等;
(4分)实现该操作的关键代码(高级语言、SQL),截图即可;
(4分)如何执行该操作,按所述方法能够正常演示程序则给分。
唱片信息的修改
基于vb窗体的直接对base」nfo表中数据进行修改。
登录口令的修改
使用ado方法首先创建两个recordset对象gx、mb,一个用来对表manager_info的数据域gx.Fields
(2)(manager_info.UserPsw)进行操作,另一个用来对表custom_info的数
据域mb.Fields
(2)(customjnfo.CustomPsw)进行操作,通过对字段的重新赋值完成更新
售出唱片后对库存以及帐户余额的更新
和修改登录口令类似,使用ado方法首先创建两个recordset对象,一个用来对表
custominfo的数据域进行操作,另一个用来对表baseinfo的数据域进行操作,通过
对相关项加减操作完成更新
输入(3分)
数据(旧数据)
约束
同名专辑(八度空间)
1varchiT20I主键
NULL(Jay)
^*rchar1〔1V1允许为空
R&B(流行)
IviTchar1〔1V允许为空
20(10)
|[noii«y101非空
2000-1-1(2001-1-1)
[iitetirn*6\f1允许为空
10(100)
1im41非空
更改字段
(3分)
字段
规则
baseinfo.CDTrackName
Varchar类型,最大长度为20
base」nfo.SingerName
Varchar类型,最大长度为10
baseinfo.MusicStyle
Varchar类型,最大长度为10
baseinfo.Price
Money类型
baseinfo.PublishDate
Datetime类型,输入格式‘yyyymm-dd'
base_info.CDStoreAmount
Int类型,长度默认为4/当用户输入购买唱片并确认帐
户付款”以后,点击购买,则把当前属性值减一的值记为新值,即唱片卖出一张。
custom_info.CustomBalanee
当用户输入购买唱片并确认帐户付款”以后,点击购
买,则把当前属性值减掉baseinfo.Price的值记为新值
custom_info.CDTrackAmount
当用户输入购买唱片并确认帐户付款”以后,点击购买,则把当前属性值加一的值记为新值,即用户购买唱片数增加一张
custom_info.CustomPsw
当用户输入新口令并确认以后,点击修改,则把输入的
字符串赋值给CustomPsw
manager_info.UserPsw
当用户输入新口令并确认以后,点击修改,则把输入的
字符串赋值给UserPsw
代码(4分)
(截屏)
唱片信息的修改:
ADO属性配置:
'GeneralIAuth&nttcationRecordSource|color]Font|
FtecordSourLS
CommandType
2-ad-0m T3也firStflnsdProMdureNains baseinfo CommandText{SQLJ 确定] 取消 Command_Click代码: PrivateSubCaiiuiiaiidl_Click() fflsgBox*修改成功"、vlXJEOnly+vbinformatlon^"修改成功" EndSub 登录口令的修改: PrivategxAsNe DImconStringAsString DImsql_stiurceAsString Dinsql.menberAsString cottString=""ProvidtrsSOLOLEDB-klntegratsdStcurity=S3PI: PtisistSecurityInfo=False: crm.OpenconString Ifusertype<>"管理员"T
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 工程 作业