#.回答问题 (1)什么是实体码?它在转换为关系模型后成为关系的什么? 答:用来唯一确定或区分实体集中每一个实体的属性组合称为实体码。 转换后,它成为关系的主键。
(2)在本实验中,如果允许一名教师指导多个项目,ER图和关系有何变化? 答:在ER图和关系中,教师与项目发生1:n联系。 (3)1:1联系、1:n联系、m:n联系转换为关系时是如何处理的? 答:1:1联系,可以将它与联系中的任何一方实体转化成的关系模式合并; 1:n联系,可将其与联系中的n方实体转化成的关系模式合并; m:n联系,必须单独成为一个关系模式,不能与任何一方实体合并。 (4)数据库表结构设计,属于数据库设计中的什么步骤? 答:物理设计。 (5)Access存储数据时,用到几个数据库文件?扩展名是什么? 答:如果不考虑页的存储的话,只有一个数据库文件,扩展名为mdb。 (6)在表结构设计中,应该包含哪些内容? 答:包括字段名、数据类型、字段属性。 (7)在本实验设计中,共使用了哪些数据类型?不同类型对宽度如何规定? 答:文本型、日期/时间型、备注型、数字型、OLE对象型、字节型、单精度型等。 (8)定义表之间的关系时,“实施参照完整性”的意义是什么?在“编辑关系”对话框中选中或者撤销“级联更新相关字段”复选框,对于数据表的操作有何影响? 答:A.当定义了表之间的关系,实施参照完整性的话,当子表插入记录时,access会检验外键值是否具有对应的主键值,如果不存在的话,就不允许插入。 B.选中了级联更新后,当修改父表主键数据时,同时也会修改子表中对应的外键值;反之,如果不选的话就不会同时更新了。 (9)建立表的关系,是否要求发生关系的两个字段必须同名? 答:不一定同名,但是必须具有相同的属性,也就是主键与外键互相对应。 (10)如何输入学生的照片? 答:在设计视图时将表中的“登记照”类型定义为OLE对象,选择“插入”到“对象”命令即可。 (11)定义表时,设置“有效性文本”字段属性有何作用? 答:当定义了一个有效性规则之后,用户针对该字段的每一个输入值或修改值都会带入表达式中运算,只有运算结果为true的值才能够存入字段;如果运算结果为false,界面上将弹出一个提示对话框提示输入错误,并要求重新输入。 (12)可以采用查阅方法输入的字段类型有哪些?绑定查阅列表框控件进行输入,如果不点击其中的值,而是输入不同的值,是否可以输入?如果一定要使输入的值限定在列表框的值的范围内,应该如何实现? 答:A.有文本、是/否、和数字三种类型。 B.不可以输入 C.定义行来源使其在一个限定的值集合中取值或者采用其他列表框等其他控件辅助输入。 (13)若为“专业”表的“学院编号”字段设计“查阅”控件。数据从“学院”表中来,显示“学院编号”和“学院名称”两列数据,采用列表框。写出设计过程。 答:A.在导航窗格中选择“专业”双击,打开“专业”的数据表视图,通过视图切换进入“专业”表的设计视图。 B.选中“学院编号”字段,选择“查阅”选项卡,并将“显示控件”属性设置为“列表框”。 C.将“行来源类型”属性设置为“表/查询”。 D.将“行来源”属性设置为“学院”。 E.将“绑定列”属性设置为1 F.将“列数”属性设置为2,定义列宽为3cm,保存表设计。 (14)在数据表浏览展开子表时,可以最多展开多少层子表?若要同时展开每条记录的的子表,应该如何操作? 答:最多可展开8层。选择“格式”菜单下的“子数据表”中的“全部展开”项即可 实验项目3:SQL视图中表达式练习 1.进入SQL视图及在不同视图间切换 按照《实验教程》实验5操作,熟悉不同视图切换。 2.不同类型数据的表达式运算 在SQL视图中分别输入以下命令,分别进入数据表视图查看结果。写出各命令结果。对于参数自己输入数据。 SELECT -5.12^2+(17 mod 3); SELECT \清华大学出版社\清华大学出版社\ SELECT \你毕业的年份是\你的学号],2))+4; 学号输入1306100156 结果为: SELECT \现在是\年\现在的时间是:\ SELECT \张三\李四\ #.回答问题 (1)有哪几种方式可进入“SQL视图”?如果用“记事本”编写了SQL语句,是否可以在SQL视图中使用?如何操作? 答:①单击查询工具栏的“视图”工具的下拉按钮,选择“SQL 视图”选项或 单击菜单栏中“视 图” ,选择“SQL 视图” 。 ②可以使用。操作如下:输入、编辑SQL语句;运行SQL语句并查看查询结果。保存SQL语句为查询对象就可以了。 (2)为什么不能在数字常量前加“¥”或“$”符号表示币值常量?“¥”或“$”有何作用? 答:这是因为由程序控制,调用显示格式。其中的“¥”表示定义货币的“格式”属性。而“$”表示可以再格式属性的任何位置使用这些字符并请将这些字符原文照印。 实验项目4:使用SQL命令进行查询和操作 1.练习SQL查询的SELECT语句 (1)查询“学院”、“专业”、“学生”完整数据 SELECT *
FROM ((学院 INNER JOIN 专业 ON 学院.学院编号 = 专业.学院编号)
INNER JOIN 学生 ON 专业.专业编号 = 学生.专业编号);
(2)查询“工商管理”专业所有女生的信息
SELECT 专业名称,学生.*
FROM 专业 INNER JOIN 学生 ON 专业.专业编号 = 学生.专业编号 WHERE 专业.专业名称 = \工商管理\学生.性别 = \女\
(3)查询作为“项目负责人”的学生的学号、姓名、性别。保存为“负责人”查询。
SELECT 学生.学号,姓名,性别
FROM 学生 INNER JOIN 项目分工 ON 学生.学号 = 项目分工.学号 WHERE 分工 = \负责人\
单击“保存”按钮,弹出“另存为”对话框。输入“负责人”,单击“确定”按钮。
(4)查询没有参与项目的学生学号、姓名、专业名称。 SELECT 学号,姓名,专业名称
FROM 学生 INNER JOIN 专业 ON 学生.专业编号 = 专业.专业编号 WHERE 学号 NOT IN(SELECT 学号 FROM 项目分工); (5)查询参与项目超过1项的学生学号、姓名和参加项目数。 SELECT 学生.学号,姓名,COUNT(*)
FROM 学生 INNER JOIN 项目分工 ON 学生.学号 = 项目分工.学号 GROUP BY 学生.学号,姓名 HAVING COUNT(*)>1;
(6)查询参与项目最多的学生学号、姓名和参与项目数。 SELECT TOP 1 学生.学号,姓名,COUNT(*) AS 参与项目数
FROM 学生 INNER JOIN 项目分工 ON 学生.学号 = 项目分工.学号 GROUP BY 学生.学号,姓名 ORDER BY COUNT(*) DESC;
(7)查询与农村或农业有关的项目及负责人姓名。 SELECT 项目.*,姓名
FROM (学生 INNER JOIN 项目分工 ON 学生.学号 = 项目分工.学号)
INNER JOIN 项目 ON 项目.项目编号 = 项目分工.项目编号
WHERE 分工 = \负责人\AND 项目名称 LIKE \农业*\OR 项目名称
LIKE \农村*\
2.练习SQL的创建表、插入、更新、删除操作语句
(1)在教师表中添加一个新教工信息,数据如下所示:
INSERT INTO 教师 VALUES (\杨飞\男\讲师\(2)将“校级”项目的经费增加1000元 UPDATE 项目
SET 经费 = 经费 + 1000 WHERE 项目类别 = \校级\
(3)创建“已结项项目”表,包括:项目编号、项目名称、项目类别、指导教师工号、负责人学号。
CREATE TABLE 已结项项目
(项目编号 TEXT(10) PRIMARY KEY,
相关推荐: