应用题 .某汽车维修公司需建立一个汽车维修数据库,该数据库中需要存储和管理下列信息:
    车辆信息:车牌号,车型,发动机号,行驶里程,车辆所有人,联系电话
    维修项目:项目号,项目名称,维修费
    汽车备件:备件号,备件名称,备件单价,库存数量
    以上数据之间存在下列约束:
    可以对一个车辆进行多个维修项目,每个维修项目可用于多个车辆,维修项目完成后要在数据库中记录维修时间;
    一种备件可用于多个维修项目,每个维修项目最多只使用一种备件,但每种备件的数量可以是多个。
问答题 8.  根据以上需求构建该数据库的概念模型(画E-R图)。
【正确答案】概念模型如下:
   
【答案解析】 由题意,一个车辆可进行多个项目的维修,一个维修可用于多个车辆,可知实体车辆信息与维修项目是多对多的关系;一种配件可用于多个维修项目,但一个维修项目只能最多用一种配件,可知配件与维修项目是一对多的关系。车牌号的取值形式限定可用CHECK来表示。
问答题 9.  假设车辆信息有如下约束:
    车牌号:标识属性,取值形式为:第1个字符是“京”,第2个字符为“A”到“Z”的字母。第3到第7个字符均是“0”到“9”的数字。此列采用普通编码定长字符型,非空;
    车型:普通编码定长字符型,长度为6,默认值为“轿车”;
    发动机号:普遍编码定长字符型:长度为6,非空;
    行驶里程:整型,取值大于或等于0;
    车辆所有人:普通编码定长字符型,长度为8,非空;
    联系电话:普通编码定长字符型,长度为13,取值唯一。
    写出创建满足上述要求的车辆信息表的SQL语句。(注:表名和列名均用题中给出的中文名,SQL语句中大、小写字母均可。)
【正确答案】Create table车辆信息(车牌号char(7)Not NULL CHECK车牌号like(“京[A-Z][0-9][0-9][0-9][0-9]”)
   车型char(6)default“轿车”,
   发动机号char(6)NOT NULL,
   行驶里程int CHECK(行驶里程>=0),
   车辆所有人char(8)NOT NULL,
   联系电话char(13)UNIQUE,
   PRIVATE KEY(车牌号)
   )
【答案解析】