vf 实验二 关联、查询和数据库
-
实验二 关联、查询和数据库
实验2-1 多
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
关联与查询
实验目的:
(1)理解关联的概念,掌握在数据工作期窗口中建立关联的方法。
(2)掌握SELECT-SQL查询命令。
(3)掌握用查询设计器建立查询的方法。
实验要求:
(1)在数据工作期窗口上建立以“订单”为父表,“订单明细”为子表的一多关系;再建立以“订单明细”为父表,“货物”为子表的多一关系的二级关联。然后查看关联后的效果。 (2)用SELECT-SQL命令对上述5个表作多表查询练习。
?查询联系“东南实业”公司的员工姓名及联系电话。
?查询订购麻油的订单份数。
(3)用查询设计器查询公司订货情况。
实验步骤:
(1)为“关联”建立索引:为订单表的订单号字段建立索引,再为货物表的货号字段建立
索引。
1) 打开“订单明细表”在命令窗口里输入命令:INDEX ON 订单号 TAG ddh,执
行命令就为该表建立了索引,打开表生成器查看如下:
图中显示了索引,默认是升序的。
)同样的方法,打开“订单明细表”在命令窗口里输入命令:INDEX ON 货号 TAG 2
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)创建“订货”数据库:执行如下命令创建并打开一个空的“订货”数据库。
ODIFY DATABASE 订货 M
然后选定“数据库”菜单(或快捷菜单)的“添加表”命令,双击“打开”对话框中的
“订单.DBF”,“订单”字段窗口就出现在数据库设计器窗口中。用同样方法添加订单
明细、货物、客户和员工表。
(2)在建立数据库表间的永久关系:参阅主教材例3-26,按表2.3.1分别为订单等5个表
创建主索引和普通索引。然后,单击“客户”字段窗口中的“客户编号”主索引(其
左侧有一个钥匙图标),按住鼠标左键,手拖曳到“订单”窗口的“客户编号”索引
位置,松开鼠标后即可画出表间关系线、货物表和订单明细表的永久关系,如下图所
示。
(3)设置“货物”表的字段级验证:打开表设计器,选定“字段”选项卡?选定列表框中
的“货号”字段?在“显示”区的“
格式
pdf格式笔记格式下载页码格式下载公文格式下载简报格式下载
”文本框中输入格式符“~”,使浏览窗口输
入/输出时将字母都转为大写?在“输入掩码”文本框中输入掩码“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)设置货物表的字段级验证和记录级验证鼓角迥临霜野曙后,在浏览窗口已打开的情况下,不能使用“表”菜单中的“追加新记录”命令,也不能使用命令APPEND BLANK为货物表添加记录;但可用“显示”菜单中的“追加方式”命令,或用命令APPEND添加记录。试解释原因。
.--
-
(2)设置订单明细表的字段级验证和记录级验证,要求所有记录的“订单号”和“货号”二字段都不能为空。
.--