国开《数据库基础与应用》第五章 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』不迷路哦~

相关文章

国开《数据库基础与应用》第八章 8-2-2:例2

国开《数据库基础与应用》第八章 8-2-2:例2

8-2-2:例2同例1大致相同,仍然在当前的公司信息管理数据库中建立一个查询,从订单表中查询出订单ID、产品ID、数量和雇员ID字段,从雇员表中查询出姓名、性别和出生日期字段,筛选条件是性别为男、或者...

国开《数据库基础与应用》第十一章 上机实验

国开《数据库基础与应用》第十一章 上机实验

上机实验 实验准备:了解和掌握文字教材第11章的全部内容。 实验目的:能够启动和进入Access数据库管理系统操作环境,能够打开一个数据库文件,能够建立用户所需要的各种绑定型和非绑...

国开《数据库基础与应用》第八章 8-3-5:例8-5

国开《数据库基础与应用》第八章 8-3-5:例8-5

8-3-5:例8-5利用“公司信息管理”数据库中的“类别”表和“产品”表,建立对每个产品类别ID和类别名称的库存量总计值。具体操作步骤如下:第①和②步与例8-1 相同。3.在这个查询中,需要用到“类别...

国开《数据库基础与应用》第十一章 11-4-7:例11-7

国开《数据库基础与应用》第十一章 11-4-7:例11-7

11-4-7:例11-7建立一个用户注册的窗体,要求用户在窗体中输入用户名、密码、密码确认和备注姓名等信息,当单击“注册”命令按钮时,要求判断用户是否输入了用户名,用户名在表中是否已经存在,两次密码输...

国开《数据库基础与应用》第十章 10-2-2:报表设计命令

国开《数据库基础与应用》第十章 10-2-2:报表设计命令

10-2-2:报表设计命令利用报表设计命令能够设计出个性化很强和功能丰富的报表。例如:可以设计出一个具有主/子结构的报表。假定我们要设计出雇员_订单报表,它就是一个具有主/子结构的报表。利用报表设计命...

国开《数据库基础与应用》第二章 2-1-3:关系的定义

国开《数据库基础与应用》第二章 2-1-3:关系的定义

2-1-3:关系的定义一个关系(relation)是相应笛卡尔积中的一个子集,若笛卡尔积具有n个域,则该笛卡尔积上的任何关系都被称为n元关系,每个关系中的元素都是一个n元组。设D1、D2、...、Dn...

国开《数据库基础与应用》第三章 3-3-1:关系规范化的概念

国开《数据库基础与应用》第三章 3-3-1:关系规范化的概念

3-3-1:关系规范化的概念关系:一个关系对应一个二维表,它由关系的结构,又叫关系模式,以及关系的内容,又叫关系的值这两个方面组成。数据库:一个数据库由若干个关系所组成,各关系之间通过主码和外码建立联...

国开《数据库基础与应用》第十章 10-1-3:报表向导命令

国开《数据库基础与应用》第十章 10-1-3:报表向导命令

10-1-3:报表向导命令用户通过使用“报表向导”命令建立报表时,不需要在当前数据库中事先打开表或查询。系统在执行报表向导命令的过程中,将由用户向报表中添加来自一个表或多个表(查询)中的字段。例如:我...

发表评论    

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