国开《数据库基础与应用》第五章 5-2-3:逻辑设计

搜答案方法:电脑端按「Ctrl+F」、手机端用「页面查找」功能输入关键词查找。

5-2-3:逻辑设计

根据上一步概念设计得到的4个基本表:即客房表、住宿表、消费卡表和旅客登记表,以及5个视图表:即客房空闲表、住宿费表、伙食费表、娱乐费表和催补款表,以及它们之间的内在联系。

create database 旅店管理 /*建立旅店管理数据库*/

use 旅店管理 /*使旅店管理数据库成为当前库*/

(1)向旅店管理数据库中插入基本表

1)客房表

create table 客房表

  房序号 int primary key,

  楼号 int not null,

  楼层号 int not null,

  房间号 int not null,

  床位号 int default 1,

  房间电话 char(5),

  价格 int not null,

  已用 int default 0, check(已用=0 or 已用=1)

2)消费卡表

create table 消费卡表

  卡号 char(6) primary key,

  资金总额 float default 0 check(资金总额>=0),

  住宿费 float default 0 check( 住宿费>=0),

  伙食费 float default 0 check(伙食费>=0),

  娱乐费 float default 0 check(娱乐费>=0),

  余额 as 资金总额-住宿费-伙食费-娱乐费 /*余额为计算字段*/

3)旅客登记表

create table 旅客登记表

  姓名 char(8) not null,

  性别 char(2) not null check(性别='男' or 性别='女'),

  来源地 char(10),

  单位 char(10),

  身份证号 char(18) not null,

  登记日期 datetime not null,

  联系电话 char(13),

  消费卡号 char(6) not null,

  foreign key(消费卡号) references 消费卡表(卡号)

4)住宿表

create table 住宿表

(

  卡号 char(6) not null,

  房序号 int not null unique,

  foreign key(房序号) references 客房表(房序号),

  foreign key(卡号) references 消费卡表(卡号)

)

(2)视图

1)客房空闲表

它通过客房表产生出来,是客房表中已用字段为0的所有空床位的投影。

在视图定义语句中,若视图名后省略列名表,则该视图默认包含着其查询子句中投影出的所有列。在此处定义的客房空闲表就包含有客房表中的所有列的定义和“已用”列值为0的所有行的内容。

create view 客房空闲表

 as select *

  from 客房表

  where 客房表.已用=0

2)住宿费表

它通过消费卡表产生出来,是消费卡表中在卡号、住宿费和余额这3个字段的投影。

create view 住宿费表

 as select 卡号,住宿费,余额

  from 消费卡表


「国开学习吧」:用户COOKIE有效时间30天,收藏网址『guokaixuexi.com』不迷路哦~

相关文章

国开《数据库基础与应用》第四章 4-3-1:向表中插入记录的语句

国开《数据库基础与应用》第四章 4-3-1:向表中插入记录的语句

4-3-1:向表中插入记录的语句向表中插入记录有两种语句格式,一种是单行插入语句格式,另一种是多行插入语句格式,它们的语句关键字都是INSERT。单行插入语句格式如下:INSERT [INTO] [&...

国开《数据库基础与应用》第九章 窗体

国开《数据库基础与应用》第九章 窗体

本章导读在前面章节我们学会了在Access数据库中建立表和查询,那么表和查询中的数据应该以一种普通用户能够接受的方式进行显示、编辑并打印输出,这就是我们这一章将要学习的窗体和下一章将要学习的报表,这两...

国开《数据库基础与应用》第四章 4-1-2:数据库的建立

国开《数据库基础与应用》第四章 4-1-2:数据库的建立

4-1-2:数据库的建立建立数据库的命令格式为:CREATE {SCHEMA | DATABASE} <数据库名> [AUTHORIZATION <所有者名>]命令功能:建立一...

国开《数据库基础与应用》第二章 2-1-1:数据域

国开《数据库基础与应用》第二章 2-1-1:数据域

2-1-1:数据域数据域是具有相同特性的一个数据集合。例如,{1,3,5,7,9,…,99};{男,女};{东,南,西,北};{A,B,C,…X,Y,Z}。一个域中所含元素的个数称为该域的基数。如性别...

国开《数据库基础与应用》第七章 实验一:表的建立与使用

国开《数据库基础与应用》第七章 实验一:表的建立与使用

实验一:表的建立与使用实验准备:了解和掌握文字教材第6~7章的全部内容。实验目的:能够启动和进入Access数据库管理系统操作环境,能够建立一个空白数据库,能够向数据库中添加数据表并建立它们之间的关系...

国开《数据库基础与应用》第七章 7-2-3:在Access中打开和关闭数据表

国开《数据库基础与应用》第七章 7-2-3:在Access中打开和关闭数据表

7-2-3:在Access中打开和关闭数据表在Access数据库工作界面的导航窗格区中,存在着各种对象的图标,同样包含着已经建立的每个表对象的图标,通过双击一个表对象图标,将在工作界面中央的用户工作区...

国开《数据库基础与应用》第七章 7-2-1:表中的字段属性

国开《数据库基础与应用》第七章 7-2-1:表中的字段属性

7-2-1:表中的字段属性在一个表中,根据字段的数据类型不同,将需要设置不同的字段属性。例如:数据类型字段属性文本主要有字段大小、格式、输入掩码、默认值、有效性规则、有效性文本、必需、允许空字符串、索...

国开《数据库基础与应用》第二章 2-2-3:属性取值完整性

国开《数据库基础与应用》第二章 2-2-3:属性取值完整性

2-2-3:属性取值完整性属性取值完整性,又称为属性取值的有效性,或者叫做用户定义的完整性。它是对关系中一个属性取值的限制定义,或者叫做约束定义。例如:考试成绩属性限定它在0-100;性别属性的取值限...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。