精华内容
下载资源
问答
  • (二) 设某汽车运输公司数据库中有三个实体集。一是“车队”实体集,属性有车队号、车 队名等;二是“车辆”实体集,属性有车牌照号、厂家、出厂日期等;三是“司机”实体集, 属性有司机编号、姓名、电话等。设车队...
  • 数据库第七章作业

    2021-05-04 21:38:23
  • 数据库系统原理--第七章作业1--习题答案

    千次阅读 多人点赞 2020-05-11 23:05:49
    (一)设某商业集团数据库有三个实体集。一是“商品”实体集,属性有商品号、商品名、 规格、单价等;二是“商店”实体集,属性有商店号、商店名、地址等;三是“供应商” 实体集,属性有供应商编号、供应商名、地址...

    题目

    (一)设某商业集团数据库有三个实体集。一是“商品”实体集,属性有商品号、商品名、
    规格、单价等;二是“商店”实体集,属性有商店号、商店名、地址等;三是“供应商”
    实体集,属性有供应商编号、供应商名、地址等。
    供应商与商品之间存在“供应”联系,每个供应商可供应多种商品,每种商品可向多
    个供应商订购,每个供应商供应每种商品有个月供应量;商店与商品间存在“销售”联系,每个商店可销售多种商品,每种商品可在多个商店销售,每个商店销售每种商品有个月计划数。
    (1)试画出ER图,并在图上注明属性、联系类型、实体标识符。
    (2)将ER图转换成关系模型,并说明主键和外键。
    (二) 设某汽车运输公司数据库中有三个实体集。一是“车队”实体集,属性有车队号、车队名等;二是“车辆”实体集,属性有车牌照号、厂家、出厂日期等;三是“司机”实体集,属性有司机编号、姓名、电话等。设车队与司机之间存在“聘用”联系,每个车队可聘用若干个司机,但每个司机只能应聘于一个车队,车队聘用司机有聘期;司机与车辆之间存在着 “使用”联系,司机使用车辆有使用日期和公里数,每个司机可以使用多辆汽车,每辆车可被多个司机使用。
    (1)试画出E-R图,并在图上注明属性、联系类型;
    (2)将E-R图转换成关系模式;
    (3)指出每个关系模式的主键和外键(如果存在)。

    答案

    在这里插入图片描述

    在这里插入图片描述

    展开全文
  • MySQL数据库设计(实验九)

    千次阅读 2019-12-27 21:45:32
    2. 某汽车运输公司数据库中有三个实体集。一是“车队”实体集,属性有车队号、车队名等;二是“车辆”实体集,属性有车牌照号、厂家、出厂日期等;三是“司机”实体集,属性有司机编号、姓名、电话等。车队与司机...

    1、数据库设计的步骤以及在各个步骤中需要完成的内容。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    2. 某汽车运输公司数据库中有三个实体集。一是“车队”实体集,属性有车队号、车队名等;二是“车辆”实体集,属性有车牌照号、厂家、出厂日期等;三是“司机”实体集,属性有司机编号、姓名、电话等。设车队与司机之间存在“聘用”联系,每个车队可聘用若干司机,但每个司机只能应聘于一个车队,车队聘用司机有聘期;司机与车辆之间存在着“使用”联系,司机使用车辆有使用日期和公里数,每个司机可以使用多辆汽车,每辆车可被多个司机使用。
    分析运输公司对车队、车辆与司机的管理模式进行数据库的设计
    (1)提取实体和实体之间的联系,用传统方式进行概念模型(E-R)的设计、画出E-R图:(注意:务必将E-R图进行组合)

    在这里插入图片描述
    (2)将上题中的E-R图按规则转化为关系模式。
    答: 车队(车队号,车队名)
    司机(司机编号,姓名,电话)
    车辆(车牌照号,厂家,出厂日期)
    聘用(车队号,司机编号,聘期)
    使用(司机编号,车牌照号,日期,公里数)
    3. 已知教师关系模式T(Tno,Tname,SD,Sdname,Cno,Coursenum)
    其中:Tno教师号、Tname教师姓名、SD系名、Sdname系主任名、CNO课程号、Coursenum周学时。
    语义为:
    一个系有多个老师,一个老师只能在一个系;每个系都有一个系主任;假设教师有重名,系主任名也可能有重名。每个教师教多门课,一门课可有几个教师开设。当某个老师讲授某门课后,其周学时就固定了。
    (1)写出关系模式T的基本函数依赖和主码。

    答:主码为(Tno,Cno)
    函数依赖关系有:
    Tno—>Tname
    Tno—>SD
    SD—>Sdname
    (Tno,Cno)—>Coursenum
    (2)原关系模式T为几范式?为什么?分解成高一级范式,并说明为什么?
    答:T为第一范式,因为Tname和SD完全函数依赖于Tno,部分函数依赖于(Tno,Cno);
    T1(Tno,Cno,Coursenum)
    T2(Tno,Tname,SD,Sdname)
    Coursenum完全函数依赖于(Tno,Cno);Tname,SD完全函数依赖以Tno;Sdname传递函数依赖于Tno;在满足第一范式的前提下,无部分函数依赖,为第二范式;
    (3)将关系模式分解成3NF,并说明为什么?
    答:T1(Tno,Cno,Coursenum)
    T2(Tno,Tname,SD)
    T3(SD,Sdname)
    Coursenum完全函数依赖于(Tno,Cno);Tname,SD完全函数依赖以Tno;Sdname完全函数依赖于SD;在满足第二范式的条件下,无传递函数依赖,为第三范式;
    4. 设有关系模式R(A,B,C,D,E,F),其函数依赖集为F={E→D,C→B,(CE)→F,B→A}。
    (1)指出R的所有候选码并说明原因。

    答:
    E—>D
    C—>B
    (C,E)—>F
    B—>A
    只在左边出现或没有出现的为:C,E
    在两边都出现的为:B
    所以B,C,E为候选码,因为其可推出A,D,F属性;
    (2)R属于几范式,为什么?
    答:第一范式;因为F完全函数依赖于(C,E),B,D部分函数依赖于(C,E),所以不满足第二范式;
    (3)将R分解为高一级范式。
    R1(E,D)
    R2(A,B,C)
    R3(C,E,F)
    【分析与思考】
    (1)E-R图设计之后应进行哪些优化?

    1、重新规划实体位置,使各个关系线之间不要出现交叉
    2、E-R图合并,消除不一致性和冗余,解决冲突。
    (2)将概念模型转换成物理模型后,实体、属性、联系有哪些变化?

    对比项概念模型物理模型
    实体实体
    属性属性字段
    关系关系(一对一,一对多,多对一)外键
    关系关系(一对多,多对一)表(关系表)
    关系关系(多对多)表(关系表)

    (3)不合理的关系模式存在什么问题?
    数据插入问题(插入异常)
    数据删除问题(删除异常)
    数据冗余问题(冗余度大)
    数据更新问题(修改复杂)
    (4)2NF、3NF分别允许有什么依赖,不允许有什么依赖?
    2NF允许有:完全函数依赖,传递函数依赖;不允许有:部分函数依赖;
    3NF允许有:完全函数依赖;不允许有:部分函数依赖,传递函数依赖;

    如有不同答案请下方留言讨论谢谢!

    展开全文
  • 数据库复习题二

    千次阅读 2019-12-30 11:21:12
    数据库复习题二数据库系统与应用的知识...2、ER图转换为关系模式3、数据库范式练习1:设某商业集团的仓库管理系统练习2:三、物理设计:确定存储方式、索引、数据结构1、数据类型2、字符型数据类型3、整数数据类型4...

    本复习题有一和二
    此处为复习题二
    觉得有用请点赞!

    数据库系统与应用的知识点

    一、 根据客户的问题进行需求分析(调查分析用户活动 、收集和分析需求数据,确定系统边界 画数据流图、数据字典)
    二、 概念设计:画ER图 重点
    三、 逻辑设计:关系模式(利用函数依赖、范式规范关系,闭包) 重点
    四、 物理设计:确定存储方式、索引、数据结构
    五、 实现:创建数据库、数据表、修改表、删除表、数据操纵(添加数据、修改数据、删除数据) 重点
    六、 查询:单表查询,多表查询(连接查询、子查询) 重点
    七、 程序设计:存储过程

    详细内容:

    一、概念设计:画ER图 重点

    在这里插入图片描述

    绘制E-R图的步骤
    (1)首先确定实体类型。
    (2)确定联系类型(1:1,1:N,M:N)。
    (3)把实体类型和联系类型组合成E—R图。
    (4)确定实体类型和联系类型的属性。
    (5)确定实体类型的键,在E—R图中属于键的属性名下画一条横线。

    二、逻辑设计:关系模式(利用函数依赖、范式规范关系) 重点

    1、关系模式(Relational Schema):由一个关系名以及它所有的属性构成。

    格式: 关系名(属性名1,属性名2,…,属性名n)
    在SQL Server中对应的表结构为:
    表名(字段名1、字段名2,… ,字段名n)

    2、ER图转换为关系模式

     转换原则
    • 将E-R图转换为关系模型实际上就是将实体、属性和联系转换成关系模式。
    • 在转换中要遵循以下原则:
    (1)一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的键就是关系的键。
    (2)一个联系转换为一个关系模式,与该联系相连的各实体的键以及联系的属性均转换为该关系的属性。该关系的键有三种情况:
    – 如果联系为1:1,则每个实体的键都是关系的候选键;
    – 如果联系为1:n,则n端实体的键是关系的键;
    – 如果联系为n:m,则各实体键的组合是关系的键。

    3、数据库范式

    基本概念
     实体:现实世界中客观存在并可以被区别的事物。比如“一个学生”、“一本书”、“一门课”等等。值得强调的是这里所说的“事物”不仅仅是看得见摸得着的“东西”,它也可以是虚拟的,如“老师与学校的关系”。
     属性:二维表中的每一列称为关系的一个属性。
     元组:表中的一行就是一个元组。
     域(Domain):属性所对应的取值变化范围叫属性的域。
     分量:元组的某个属性值。在一个关系数据库中,它是一个操作原子,即关系数据库在做任何操作的时候,属性是“不可分的”。否则就不是关系数据库了。
     主键(Primary Key):能唯一标识关系中不同元组的属性或属性组称为该关系的候选关键字。
     外键(Foreign Key):如果关系R的某一(些)属性A不是R的关键字,而是另一关系S的关键了,则称A为R的外来关键字。
    第一范式(1NF):属性不可分
    在这里插入图片描述
    第二范式(2NF):符合1NF,并且,非主属性完全依赖于码。
    在这里插入图片描述

     第三范式(3NF)符合2NF,并且,消除传递依赖
     上面的“学生上课表新”符合2NF,可以这样验证:两个主属性单独使用,不用确定其它四个非主属性的任何一个。但是它有传递依赖!
     在哪呢?问题就出在“老师”和“老师职称”这里。一个老师一定能确定一个老师职称。
     有什么问题吗?想想:
    小结:
    在数据库设计中,为了更好地应用三个范式,就必须通俗地理解三个范式(通俗地理解是够用的理解,并不是最科学最准确的理解):
     第一范式:1NF是对属性的原子性约束,要求属性具有原子性,不可再分解;
     第二范式:2NF是对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性;
     第三范式:3NF是对字段冗余性的约束,即任何字段不能由其他字段派生出来,它要求字段没有冗余。
     没有冗余的数据库设计可以做到。但是,没有冗余的数据库未必是最好的数据库,有时为了提高运行效率,就必须降低范式标准,适当保留冗余数据。具体做法是:在概念数据模型设计时遵守第三范式,降低范式标准的工作放到物理数据模型设计时考虑。降低范式就是增加字段,允许冗余。

    练习1:设某商业集团的仓库管理系统

    数据库有三个实体。
    一是“公司”实体,属性有公司编号、公司名、地址等;
    二是“仓库”实体,属性有仓库编号、仓库名、地址等;
    三是“职工”实体,属性有职工编号、姓名、性别等。
    公司与仓库间存在“隶属”联系,每个公司管辖若干仓库,每个仓库只能属于一个公司管辖;
    仓库与职工间存在“聘用”联系,每个仓库可聘用多个职工,每个职工只能在一个仓库工作,仓库聘用职工有聘期和工资。
    (1)试画出ER图,并在图上注明属性、联系的类型。
    (2)将ER图转换成关系模式,并注明主键和外键。
    在这里插入图片描述
    公司(公司编号,公司名,地址)
    仓库(仓库编号,仓库名,地址,公司编号)FK:公司编号
    职工(职工编号,姓名,性别)
    聘用(职工编号,仓库编号,聘期,月薪)

    练习2:

    设某汽车运输公司数据库中有三个实体集。一是“车队”实体集,属性有车队号、车队名等;二是“车辆”实体集,属性有牌照号、厂家、出厂日期等;三是“司机”实体集,属性有司机编号、姓名、电话等。
    车队与司机之间存在“聘用”联系,每可聘用若干司机,但每个司机只能应聘于一个车队,车队聘用司机有“聘用开始时间”和“聘期”两个属性;
    车队与车辆之间存在“拥有”联系,每个车队可拥有若干车辆,但每辆车只能属于一个车队;
    司机与车辆之间存在着“使用”联系,司机使用车辆有“使用日期”和“公里数”两个属性,每个司机可使用多辆汽车,每辆汽车可被多个司机使用。
    (1)请根据以上描述,绘制相应的 E-R 图,并直接在 E-R 图上注明实体名、属性、联系类型。
    (2)将 E-R 图转换成关系模式,并说明主键和外键。

    (1)
    在这里插入图片描述

    (2)
    车队(车队号,车队名)
    司机(司机编号,姓名,电话,车队号,聘用开始时间,聘期)
    车辆(牌照号,厂家,出厂日期,车队号)
    使用(司机编号,牌照号,使用日期,公里数)

    三、物理设计:确定存储方式、索引、数据结构

    1、数据类型

    SQL Server系统提供的基本数据类型有二进制数据、字符型数据、Unicode数据、日期和时间数据、数字数据、货币数据和特殊数据等七种类型
    (1)二进制数据类型
    在这里插入图片描述

    2、字符型数据类型

    字符数据由字母、符号和数字等组成。在输入字符数据时,应将数据括在括号内。字符数据包括Char、Varchar和Text三种类型。
    在这里插入图片描述

    3、整数数据类型

    在这里插入图片描述

    4、日期和时间数据类型

    日期和时间型数据由有效的日期和时间组成。这种数据类型分为datetime和smalldatetime两种,二者的主要差别在于它们的存储长度、所表示的时间范围和精度不同。在输入日期和时间型数据时应将数据引在单引号内。
    

     Datetime:所存储的日期范围是从1753年1月1日开始,到9999年12月31日结束(每一个值都要求8个存储字节,表示时间的精度为1/300秒)。
     Smalldatetime:所存储的日期范围是从1900年1月1日开始,到2079年6月6日结束(每一个值都要求4个存储字节,表示时间的精度为分钟)。
    例:
    车队(车队号,车队名)
    司机(司机编号,姓名,电话,车队号,聘用开始时间,聘期)
    车辆(牌照号,厂家,出厂日期,车队号)
    使用(司机编号,牌照号,使用日期,公里数)
    上述关系模式的数据结构如下
    (1)车队信息表
    在这里插入图片描述

    (2)司机信息表
    在这里插入图片描述

    (3) 车辆表
    在这里插入图片描述

    (4)使用情况表
    在这里插入图片描述

    五、 实现:创建数据库、数据表、修改表、删除表、数据操纵(添加数据、修改数据、删除数据) 重点

    在这里插入图片描述

    1、创建数据库的完整语法

    CREATE DATABASE 数据库名
    [ON [PRIMARY] [< filespec >[,…] ] [,[,…n] ] ]
    [LOG ON {[,…n ] } ]
    在这里插入图片描述

    例: 创建一个学生成绩管理数据库(StudScore_DB2),该数据库的主文件逻辑名称为“StudScore_DB2_Data1”,物理文件名为“StudScore_DB2_Data1.mdf”,初始大小为10MB,最大尺寸为无限大,增长速度为10%;数据库的日志文件逻辑名称为“StudScore_DB2_log1”,物理文件名为“StudScore_DB2_log1.ldf”,初始大小为5MB,最大尺寸为25MB,增长速度为1MB。
    CREATE DATABASE 学生成绩管理数据库
    ON
    (NAME=StudScore_DB2_Data1,
    FILENAME =‘D:\StudScore_DB2_Data1.mdf’ ,
    SIZE=10,
    MAXSIZE=UNLIMITED,
    FILEGROWTH=10% )
    LOG ON
    ( NAME=‘StudScore_DB2_log1’ ,
    FILENAME=‘D:\StudScore_DB2_log1.ldf’,
    SIZE=5MB,
    MAXSIZE=25MB,
    FILEGROWTH=1MB)

    练习:

    创建上述的汽车运输公司数据库,要求存储在E盘根目录下,其它参数自定义。

    CREATE DATABASE 汽车运输公司数据库
    ON
    (NAME=qcys_DB2_Data1,
    FILENAME =‘E:\ qcys _DB2_Data1.mdf’ ,
    SIZE=10,
    MAXSIZE=UNLIMITED,
    FILEGROWTH=10% )
    LOG ON
    ( NAME=‘qcys _DB2_log1’ ,
    FILENAME=‘E:\ qcys _DB2_log1.ldf’,
    SIZE=5MB,
    MAXSIZE=25MB,
    FILEGROWTH=1MB)

    2、创建表语法

    CREATE TABLE 表名
    ( 字段名1 数据类型[约束],
    字段名2 数据类型[约束],

    字段名N 数据类型[约束],
    );

    2.1五个约束
    定义数据表的约束
    1、NULL /NOT NULL约束
    语法格式: [CONSTRAINT <约束名> ][NULL | NOT NULL]
    2、UNIQUE约束(唯一约束)
    语法格式: [CONSTRAINT <约束名> ] UNIQUE
    3、PRIMARY KEY约束(主键约束)
    语法格式: [CONSTRAINT <约束名> ] PRIMARY KEY
    4、FOREIGE KEY 约束(外键约束)
    语法格式: [CONSTRAINT <约束名> ] FOREIGN KEY REFERENCES <主表名> (<列名>{}[,<列名>]})
    5、CHECK约束
    用来检查字段值所允许的范围,如一个字段只能输入整数,而且限定在0~100的整数,以此来保证完整性。
    语法格式: [CONSTRAINT <约束名> ] CHECK(<条件>)
    CONSTRAINT score check(score between 0 and 100)
    Check(成绩〉=0 and 成绩<=100)
    Check(性别 in(‘男’,’女’))

    例:创建车队、司机、车辆、使用信息表。
    车队信息表
    在这里插入图片描述

    CREATE TABLE 车队信息表
    ( cdh Varchar (15) PRIMARY KEY,
    Cdm Varchar (16)
    );

    司机信息表
    在这里插入图片描述
    CREATE TABLE 司机信息表
    ( sjbh Varchar (15) PRIMARY KEY,
    sm Varchar (16) ,
    dh char (11) ,
    cdh Varchar (16),
    pysj Datetime,
    pj int );
    (3) 车辆表
    在这里插入图片描述

    CREATE TABLE 车辆表
    ( pjh Varchar (15) PRIMARY KEY,
    cj Varchar (30) ,
    CCDATE Datetime ,
    cdh Varchar (16) )

    (4)使用情况表
    在这里插入图片描述

    CREATE  TABLE   使用情况表
     (  sjbh  Varchar (15) CONSTRAINT PK_S_d   Foreign key   REFERENCES  司机信息表(sjbh),
        pjh   Varchar (15) CONSTRAINT PK_S_C  Foreign key  REFERENCES  车辆表(pjh) ,
        SYDATE  Datetime,
        GLS   int,
    

    Constraint PK_S_P Primary Key (sjbh, pjh), --建立复合主键
    );

    3、PRIMARY KEY约束(主键约束)

    语法格式: [CONSTRAINT <约束名> ] PRIMARY KEY

    4、FOREIGE KEY 约束(外键约束)

    语法格式: [CONSTRAINT <约束名> ] FOREIGN KEY REFERENCES <主表名> (<列名>{}[,<列名>]})
    在这里插入图片描述

    在这里插入图片描述

    2、数据操纵

    一、数据插入

    格式: INSERT [INTO] 表名或视图
    [(column {,column})] /插入的列名/
    VALUES (coulmnvalue[{,columnvalue}]); /插入的列值/

    二、数据更新

    格式:
    UPDATE 表名
    SET columname=newvalue[,nextcolumn=newvalue2…]
    WHERE columnname OPERATOR value[and| or column OPERATOR value];

    三、数据删除

    格式:
    DELETE FROM 表名
    WHERE columnname OPERATOP value [AND|OR column OPERATOP value];

    练习:现有以下关系模式,请设计一些题目进行数据插入、更新、删除,并写出答案。
    车队(车队号,车队名)
    司机(司机编号,姓名,电话,车队号,聘用开始时间,聘期)
    车辆(牌照号,厂家,出厂日期,车队号)
    使用(司机编号,牌照号,使用日期,公里数)

    六、查询:单表查询,多表查询(连接查询、子查询) 重点

    SELECT 查询语句结构
    1、SELECT 语句精简结构 语法:
    SELECT select_list
    [INTO new_table_name]
    FROM table_list
    [WHERE search_conditions]
    [GROUP BY group_by_list]
    [HAVING search_conditions]
    [ORDER BY order_list [ASC | DESC ]]
    SELECT语句的执行过程
    1)读取FROM子句中基本表、视图的数据,执行笛卡尔积操作。
    2)选取满足WHERE子句中给出的条件表达式的元组。
    3)按GROUP子句中指定列的值分组,同时提取满足HAVING子句中组条件表达式的那些组。
    4)按SELECT子句中给出的列名或列表达式求值输出。
    5)ORDER子句对输出的目标表进行排序,按附加说明ASC升序排列,或按DESC降序排列。

    语法:
    SELECT [ALL | DICTINCT] [TOP] /指定输出行规则/
    [<column_name>][AS<column_name>][,[<column_name>]
    /指定要查询的列或行及其限定/
    [AS<column_name>]…] /指定列别名/
    FROM <database_name>]<table_name>[[AS]Local_Alias] /指定表或视图/
    [[INNER | LEFT [OUTER] | RIGHT [OUTER] | FULL [OUTER] /指定连接类型/
    JOIN [<database_name>]<table_name>[[AS]Locat_Alias][ON<连接条件>]]
    [INTO | TO FILE <file_name>[ADDITIVE]
    | TO PRINTER [PROMPT] | TO SCREEN ] /指定输出方式/
    [PREFERENCE PreferenceName] [NOCONSOLE][PLAIN][NOWAIT]
    [WHERE ][AND …] [AND | OR …]]
    /指定查询的及其限定/
    [GROUP BY ][,…]] /指定分组/
    [HAVING ] /指定分组统计条件/
    [UNION [ALL] < SELECT column_name>] /指定集合操作/
    [ORDER BY <column_name>[ASC | DESC ][,<column_name>[ASC | DESC]…]]
    /指定输出行规则/
    1) 使用DISTINCT关键字去除重复的记录
    2) TOP:在数据查询时,经常需要查询最好的、最差的、最前的、最后的几条记录,这时需要使用TOP关键字进行数据查询。
    TOP n [PERCENT]:指定返回查询结果的前n行数据,如果PERCENT关键字指定的话,则返回查询结果的前百分之n行数据。
    WITH TIES :此选项只能在使用了ORDER BY 子句后才能使用,当指定此项时除了返回由TOP n PERCENT指定的数据行外,还要返回与TOP n PERCENT返回的最后一行记录中由OEDER BY子句指定的列的列值相同的数据行。
    3) 别名运算
    在这里插入图片描述
    4) 使用INTO 子句
    INTO new_table_name子句将查询的结果集创建一个新的数据表。
    在这里插入图片描述

    5)FROM子句
    • FROM子句主要用来指定检索数据的来源,指定数据来源的数据表和视图的列表,该列表中的数据表名和视图名之间使用逗号分隔。
    语法: [FROM { <table_source>} [,…n] ]
    在这里插入图片描述

    聚合函数
    在这里插入图片描述

          HAVING子句指定分组搜索条件,是对分组之后的结果再次筛选。
            HAVING语法与WHERE语法类似。
    

    在这里插入图片描述

    创建视图

    其语法格式如下:
    CREATE VIEW [ 视图所有者 . ] /指定视图的所有者/
    视图名 /指定视图名/
    [ (列名 [ ,…n ] ) ] /指定视图中的列/
    [ WITH <视图属性> [ ,…n ] ] /指定视图中的属性/
    AS 查询语句 [ ; ] /指定创建视图的T-SQL语句/
    [ WITH CHECK OPTION ] /指定修改条件/

    存储过程概述
    存储过程(Stored Procedure)是一组完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行存储过程。
    利用SQL Server创建一个应用程序时,SQL是主要的编程语言。使用SQL进行编程,有两种方法。其一是,在本地存储SQL程序,并创建应用程序向SQL Server发送命令来对结果进行处理。其二是,可以把部分用SQL编写的程序作为存储过程存储在SQL Server中,然后创建应用程序来调用存储过程,对数据结果进行处理。

    9.1.3 存储过程的设计规则
    使用SQL语句CREATE PROCEDURE可以创建存储过程。其语法格式如下:
    CREATE { PROC | PROCEDURE 存储过程名
    [ ; number ]
    [ { @参数 数据类型 }
    [ VARYING ] [ = default ] [OUTPUT ]
    ] [ ,…n ]
    [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE ,ENCRYTION } ]
    [ FOR REPLICATION ]
    AS { <SQL语句> [;][ …n ] |

    使用存储过程
    存储过程可以使用EXECUTE语句在查询编辑器中执行。
    语法:[[EXEC [ UTE]]
    { [ return_statrs= ]
    { 存储过程名 [;number ] |@preocdure+name_var
    }
    [[@parameter=]{value | @variable [OUTPUT]|[DEFAULT]]
    [,…n]
    [WITH RECOMPILE]

    例9.4 编写一个存储过程,取得一个指定区间范围内的成绩。
    CREATE PROCEDURE ProcGetScoreStep @Start numeric(4,1),@End numeric(4,1)
    With Encryption
    As
    SELECT *
    FROM 成绩表
    WHERE 成绩>=@Start And 成绩<=@End
    GO

    –调用存储过程ProcGetScoreStep,并传递参数80和90,显示成绩在区间[80,90]的成绩信息。

    Exec ProcGetScoreStep 80,90
    在这里插入图片描述

    关系运算

    1.选取 (selection)

    选取运算的含义
    在关系R中选择满足给定条件的诸元组
    σF® = {t|tR∧F(t)= ‘真’}
    σ:为选取运算符;F:选择条件,是一个逻辑表达式,取值为“真”或“假”.它是由运算对象(属性名,常数,简单函数),算术比较运算符,逻辑运算符连接起来的逻辑表达式。
    【例题 1】 查询年龄小于20岁的学生

    在这里插入图片描述

    结果见下表:

    在这里插入图片描述

    2.投影projection

    在这里插入图片描述
    【例题 2】 查询学生的姓名和所在系
    Student
    在这里插入图片描述
    f

    结果如下:
    在这里插入图片描述

    3、连接jion

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    练习:

    1、设有关系模式S(SNo,SN,Sex,Age),其中SNo,SN,Sex,Age分别表示学生的学号、姓名、性别、年龄。则“从中检索学生年龄大于18岁的学生学号”,关系代数表达式为( )。
    A. σSNo(ΠAge>18(S)) B. σSNo(σAge>18(S))
    D. ΠSNo(ΠAge>18(S)) D. ΠSNo(σAge>18(S))
    2、有两个关系R(A,B)和S(B,C,D),则R×S结果的属性个数是( )。
    A. 3 B. 4 C. 5 D. 6

    展开全文
  • 数据库

    2020-12-20 06:21:47
    A、数据库避免了一切数据的重复 B、数据库中的数据可以共享C、数据库系统实现整体数据的结构化 D、数据库具有较高的数据独立性2、数据库管理系统(DBMS)是。A、一个完整的数据库应用系统 B、一组硬件C、一组系统软件....
  • 数据库期末冲刺复习

    2021-06-19 19:37:29
    重点:SQL 规范化理论 数据库设计几章 概念记忆:第一章 第二章 最后一章 !(https://img-blog.csdnimg.cn/20200325154511288.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6...
  • 1.设某汽车运输公司数据库中有三个实体集。一是“车队”实体集,属性有车队号、车队名等;二是“车辆”实体集,属性有车牌照号、厂家、出厂日期等;三是“司机”实体集,属性有司机编号、姓名、电话等。设车队与...
  • 为何要做概念建模
  • 数据库 E-R图实例

    万次阅读 多人点赞 2020-05-17 20:08:49
    设某汽车运输公司数据库中有三个实体集。 实体: 车队(车队号,车队名) 车辆(车牌照号,厂家,出厂日期) 司机(司机编号,姓名,电话) 要求: 车队与司机之间存在“聘用”联系,每个车队可聘用若干司机,但每个...
  • TUST 数据库原理 试卷(A)

    千次阅读 2020-09-05 21:24:41
    保护数据库,防止未经授权或不合法的使用造成的数据泄漏、非法更改或破坏。这是指数据的( A )。 A. 安全性 B.完整性 C.并发控制 D.恢复 事务的一致性是指( D )。 A.事务中包括的所有操作要么都做,要么都不...
  • 数据库系统概论练习5

    2021-01-06 19:52:30
    用户与操作系统之间的数据管理软件称为DBMS(数据库管理系统)。 用二维表表示实体类型和实体间关系的数据模型是关系数据模型 。 关系代数的五种基本查询操作有选择、投影、并、差、笛卡尔积。 在SELECT语句中...
  • MySQL数据库建模过程可以分为  需求分析阶段、概要设计阶段、详细设计阶段、代码编写阶段、软件测试阶段  下面主要介绍一下概要设计阶段的E-R模型图的设计以及三大范式。 E-R图设计  在E-R图中,实体用矩形...
  • 本文主要描述了关系型数据库设计的各个阶段及重要概念,并重点介绍了 概念设计 和 逻辑设计 两大核心阶段,着重强调了 E-R 模型的构造 步骤,除此之外还补充了 关系模式的规范化 及如何 求解关系模式的候选码 等重要...
  • SQL Server数据库程序设计认证试题

    千次阅读 2011-09-23 23:51:15
    1.你是一家公司数据库开发员,你正在创建一个数据库用来存储15所中学运动会的统计信息,这些信息将被 50个公司用来在他们网站上发布运动会信息。每个公司的Web站点用不同的格式排列和显示统计表。你需要把数 据...
  • 数据库简介

    千次阅读 2005-07-29 14:35:00
    数据库简介一、电子期刊全文数据库1、中国学术期刊数据库《中国期刊全文数据库》由中国学术期刊(光盘版)电子杂志社出版,收录1994年至今的6600种学术类核心与专业特色期刊全文,是迄今为止全国最大的连续动态更新...
  • 第3章 数据库系统

    2021-03-29 13:59:17
    概念级数据库由概念记录组成,一个数据库可有多个不同的用户视图,每个用户视图由数据库某一部分的抽象表示所组成。一个数据库应用系统只存在一个 DBA 视图,它把数据库作为一个整体的抽象表示。概念级模式把用户...
  • 点上方蓝字人工智能算法与Python大数据获取更多干货在右上方···为星标★,第一时间获取资源仅做学术分享,如有侵权,联系删除转载于 :作者 |金明、郑卫军来源|中兴开发者社...
  • 深入浅出UML类图

    2018-07-01 10:49:17
    //值注入 public void setEngine(Engine engine) { this.engine = engine; } …… } public class Engine { …… } (6) 组合关系 组合(Composition)关系也表示类之间整体和部分的关系,但是在组合关系中整体...
  • 现有的自动驾驶仿真软件现状总结

    千次阅读 2021-05-13 17:01:04
    点上方蓝字人工智能算法与Python大数据获取更多干货在右上方···为星标★,第一时间获取资源仅做学术分享,如有侵权,联系删除转载于 :知乎@周熙钦现有的仿真软件主要包括CarSi...
  • 日常生活中的企业监控

    千次阅读 2020-02-25 19:19:00
    不是小说,这是一份3年前的调研报告,不知是否影响了GDPR。或许,“Matrix”已经走到了身边,福祸未知!近年来,各种各样的公司已经开始在人们生活的各个方面进行监控、跟踪和跟踪。数十亿...
  • E-R图实例

    千次阅读 2019-07-23 17:46:22
    设某汽车运输公司数据库中有三个实体集。一是“车队”实体集,属性有车队号、车队名等;二是“车辆”实体集,属性有车牌照号、厂家、出厂日期等;三是“司机”实体集,属性有司机编号、姓名、电话等。设车队与司机...
  • 一文简说北斗定位系统的前世今生

    千次阅读 2019-06-10 09:18:21
    GPS是个好东西,对人们生活品质的提升相当大,例如汽车和手机导航就非常重要,人们告别了在纸制地图上找路的历史。GPS对于探险航海就更重要了,关键时刻可以救命。这么好的东西,美国又投入了巨资,居然向全世界免费...
  • UML类图几种关系的总结

    千次阅读 2016-06-24 12:05:43
    没有公司就不存在部门 组合关系是关联关系的一种,是比聚合关系还要强的关系,它要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期 【代码体现】:成员变量 【箭头及指向】:带实心菱形的实线...
  • 日照港(集团)有限公司提出利用RFID射频 识别技术来实现港区载货汽车的智能调度与管 理,将RFID系统、电子汽车衡、控制信号装置等组成车辆身份自动识别和称重控制系统,结合计 算机生产管理系统以及信息数据库管理...
  • 需求分析、ER图、状态转换图

    千次阅读 2020-05-06 17:40:35
    练习题: 设某汽车运输公司数据库中有三个实体集。一是“车队”实体集,属性有车队号、车队名等;二是“车辆”实体集,属性有牌照号、厂家、出厂日期等;三是“司机”实体集,属性有司机编号、姓名、电话等。 设...
  • 最新计算机专业原创毕业设计参考选题都有源码+数据库是近期作品 你的选题刚好在下面有,有时间看到机会给您发 1 ssm科大学生党员之家的设计与实现 2 springboot大学生兼职平台 3 ssm海南自贸港知识...
  • 会计

    千次阅读 2012-03-23 17:13:08
    1946年在美国诞生了第一台电子计算机,1953年便在会计中得到初步应用,其后迅速发展,至20世纪70年代,发达国家就已经出现了电子计算机软件方面数据库的应用,并建立了电子计算机的全面管理系统。从系统的财务会计中...
  • 点击上方关注 “终端研发部”为“星标”,和你一起掌握更多数据库知识第一梯队:六巨头1.阿里巴巴(阿里上海研发中心,闵行大虹桥,本地生活总部:盒马/口碑,阿里国际站等,10-10-5,加班...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 532
精华内容 212
关键字:

设某汽车运输公司数据库