VF 实验二 关联、查询和数据库.doc_第1页
VF 实验二 关联、查询和数据库.doc_第2页
VF 实验二 关联、查询和数据库.doc_第3页
VF 实验二 关联、查询和数据库.doc_第4页
VF 实验二 关联、查询和数据库.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验二 关联、查询和数据库实验2-1 多表关联与查询实验目的:(1)理解关联的概念,掌握在数据工作期窗口中建立关联的方法。(2)掌握SELECT-SQL查询命令。(3)掌握用查询设计器建立查询的方法。实验要求:(1)在数据工作期窗口上建立以“订单”为父表,“订单明细”为子表的一多关系;再建立以“订单明细”为父表,“货物”为子表的多一关系的二级关联。然后查看关联后的效果。(2)用SELECT-SQL命令对上述5个表作多表查询练习。查询联系“东南实业”公司的员工姓名及联系电话。查询订购麻油的订单份数。(3)用查询设计器查询公司订货情况。实验步骤:(1)为“关联”建立索引:为订单表的订单号字段建立索引,再为货物表的货号字段建立索引。1) 打开“订单明细表”在命令窗口里输入命令:INDEX ON 订单号 TAG ddh,执行命令就为该表建立了索引,打开表生成器查看如下: 图中显示了索引,默认是升序的。2)同样的方法,打开“订单明细表”在命令窗口里输入命令:INDEX ON 货号 TAG hh,执行命令就为该表建立了索引,(2)建立关联:过程方法:1)打开数据工作期窗口分别用“打开”按钮打开订单表、订单明细表和货物表在“别名”列表框中选定“订单”,单击“关系”按钮在“别名”列表框中选定“订单明细”随即弹出“设置南索引顺序”对话框,其列表框中显示“订单明细.订单号”。选定“确定”按钮随即弹出“表达式生成器”对话框,其SET RELATION框中显示“订单号”。选定“确定”按钮,多一关系建立完成选定“一对多”按钮在随即弹出的“创建一对多关系”对话框中选定“确定”按钮,一多关系建立完成。显示的表达式生成器如下: 2) 在“别名”列表框中选定“订单明细”为确定以订单明细表为父表建立下一级关联,在“关系”列表框中也选定“订单明细”单击“关系”按钮在“别名”列表框中选定“货物”在随即弹出的“设置索引顺序”对话框中选定“确定”按钮在“表达式生成器”对话中选定“确定”按钮,多一关系建立完成,如图下图所示:(3)查看关联效果:分别“订单”、“订单明细”和“货物”浏览窗口,并按左中右顺序排列选定“订单”表的某个记录,“订单明细”和“货物”浏览窗口的内容即会关联变化,如下图所示。 1)订单表里选定订单号10248时,后面的表显示相应的信息如下: 2)当再次点击其他货号时,也显示相应的信息如下: (4)查询联系“东南实业”公司的员工姓名及联系电话:根据“东南实业”分司的客户编号,可在订单表中找到与其联系的员工工号,据此就可在员工表中查出该员工的姓名及电话号码。SELECT-SQL命令如下: SELECT 客户.公司名称,员工.姓名,员工.电话; FROM 客户,订单,员工; WHERE 客户.客户编号=订单.客户编号 AND 订单.工号=员工.工号; AND 客户.公司名称=”东南实” 执行命令显示查询结果为: (5)查询订购麻油的订单份数:先通过货物表与订单明细表联接生成两表货号相同的记录,再用WHERE子句在这些记录中筛选出货名是“麻油”的记录,此时就可用COUNT函数对两表的任何字段(例如订单明细.订单号)进行计数。下面是写出的一种命令。SELECT 货物.货名,COUNT(订单明细.订单号) AS 订单份数; FROM 货物 INNER JOIN 订单明细 ON 货物.货号=订单明细.货号; WHERE 货物.货名=”麻油”执行命令显示结果如下:(6)用查询设计器查询订货情况:根据客户表中的客户编号,可在订单表中查出该客户的订单号,然后在订单明细表中查出所订货物的货号及数量,并通过货物表查出相应的化名和库存量。选定菜单命令“文件|新建”,或单击“常用”工具栏的“新建”按钮,即显示“新建”对话框文件类型选定为“查询”,单击“新建文件”按钮,即出现查询设计器和“打开”对话框在“打开”对话框的列表中双击“客户.DBF”选定“添加表或视图”对话框的“其他”按钮,然后在“打开”对话框的列表框中双击“订单.DBF”在随即出现的“联接条件”对话框中选定“确定”按钮类似地再通过“其他”按钮分别添加订单明细和货物表,然后关闭“添加表或视图”对话框,此时查询设计器的上窗格如图2.2.3所示在查询设计器的“字段”选项卡中,将“可用字段”互敬互爱框中的客户.公司名称、客户.联系人、订单.订单号、订单明细.货号、货物.货名、订单明细.数量及货物.库存量移到“选定字段”列表框选定“排序依据”选项卡,将“选定字段”列表框中的“客户.公司名称”移到“排序条件”列表框单击“常用”工具栏中的“运行”按钮运行查询,结果下图2.3.4所示。右键查看此查询设计器的SQL语言如下: 5.思考与操作(1)在图2.3.2的“订单”浏览窗口中,第2、5行是用星号填充的,试原因。(2)用SELECT-SQL查询倒序查询国插电器分司的订单号及订购日期。(3)用查询设计器查询员工郑大地完成订单情况。实验2-2 数据库的基本操作实验目的:(1)掌握数据库的建立和维护方法。(2)熟练掌握设置数据库表字段级验证和记录级验证的方法。(3)掌握为数据库表建立永久关系和设置参照完整性的方法。实验要求:(1)创建“订货”数据库,要求包含订单、订单明细、货物、客户和员工5个表。(2)建立上述数据库表间的永久关系(3)以“货物”表为例设置数据库表属性。(4)练习设置数据库表之间的参照完整性。实验步骤:(1)创建“订货”数据库:执行如下命令创建并打开一个空的“订货”数据库。MODIFY DATABASE 订货然后选定“数据库”菜单(或快捷菜单)的“添加表”命令,双击“打开”对话框中的“订单.DBF”,“订单”字段窗口就出现在数据库设计器窗口中。用同样方法添加订单明细、货物、客户和员工表。(2)在建立数据库表间的永久关系:参阅主教材例3-26,按表2.3.1分别为订单等5个表创建主索引和普通索引。然后,单击“客户”字段窗口中的“客户编号”主索引(其左侧有一个钥匙图标),按住鼠标左键,手拖曳到“订单”窗口的“客户编号”索引位置,松开鼠标后即可画出表间关系线、货物表和订单明细表的永久关系,如下图所示。(3)设置“货物”表的字段级验证:打开表设计器,选定“字段”选项卡选定列表框中的“货号”字段在“显示”区的“格式”文本框中输入格式符“!”,使浏览窗口输入/输出时将字母都转为大写在“输入掩码”文本框中输入掩码“A9999”,限制输入的货号必须第1位是字母,后4位是数字字符在“字段有效性”区的“规则”文本框中输入表达式“LEN(ALLTRIM(货号)=5”,要求货号必须有5个字符,不能空缺在“信息”文本框中转作离声满坐愁提示信息“”请输入5位货号:字母开头,后跟4位数字字符。”,以便在出错时给出明确的提示信息在“默认值”文本框转作离声满坐愁默认值”A”,可提高输入不哭亦足矣,减少输入错误;同时,还提示货号的第1位应输入字母在“字段注释”编辑框中输入该字段的说明性文字,如下图所示。(4)设置“货物”表的记录级验证:选定“表”选项卡在“记录有效性”区的“规则”文本框中输入表达式“NOT LEN(ALLTRIM(货名)=0”,确保“货名”字段必须输入数据在“信息”文本框中输入“”请输入货名!”,以便在货名字段为空的情况下离开被编辑记录时给出提示在“触发器”区的“删除触发器”文本框中输入表达式“LEFT(货号,1)#”S”,指定货号以S开头的记录不能删除。参阅图2.3.7。 输入上述内容后按确定,显示结果如下:(5)练习设置“参照完整性”:打开“订货”数据库,执行菜单命令“数据库|清理数据库” 选定“编辑参照完整性”命令,随即弹出如图2.3.8所示的“参照完整性生成器”窗口,此时已选定“更新规则”选项卡单击表格第2行行首的按钮,选定货物表与订单明细时打开货物表和订单明细表的浏览窗口将货物表的“货号”字段值A1052改为A1055单击订单明细表的浏览航空器,逾期成为当前窗口,可见其“货号”字段中的A1052也变成了A1055。按上述步骤,现将货物表与订单明细表的更新规则设置为“限制”,将货物表的货号字段值A1055重新改为A1052,观察其结果。对删除规则和插入规则,读者可作相应练习。下图为将货号A1052改为A1055后的结果:现将货物表与订单明细表的更新规则设置为“限制”,将货物表的货号字段值A1055重新改为A1052,观察其结果。对删除规则和插入规则,读者可作相应练习。将货物表与订单明细表的更新规则设置为“限制”,浏览表时显示如下提示信息:5.思

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论