(2)本章所有例题(结合上机)阅读理解。
实验2:sql语言(使用ms sql server)
要求重复本章所有例题,并能加以适当变化,主要是谓词的变化。
第二章【附录】 关系代数理论。
本章习题:1 用左右简述关系数据的三层模型。
2 本章“2.3 关系代数的原始运算”“选择”、“投影”、“笛卡尔积”、“并集”、“差集”和“重命名”。请根据课件第二章的例题,猜测一下,这六个原始运算对应sql语言的那个主句、子句或谓词。
3本章“2.4连接和类似连接的运算”给出了几个链接查询结果集的**样例(比如部门表和雇员表的自然连接),写出相应的sql语句。
2.“选择”:select “投影”:select test from a
“笛卡尔积”:select 选课表。*,学生表。*,课程表。*
并集”:where ..or...差集”:where...and...
重命名”:exec sp_rename '表名。原列名', 新列名';
3.自然连接 (?
自然连接是写为 (r ? s) 的二元运算(相当于c语言的双目运算),这里的 r 和 s 是关系。自然连接的结果是在r和s 中公共属性名字上相等的所有元组的组合。
例如下面是**“雇员”和“部门”和它们的自然连接:
select 雇员。*,部门。* from 雇员,部门。
where 雇员。deptname =部门。deptname ;
或是select * from 雇员 natural join 部门;(sql server2005不能用)
-连接(内连接)
考虑分别列出车模和船模的**的表“车”和“船”。假设一个顾客要购买一个车模和一个船模,要求船模比车模便宜。在关系上的θ-连接 carprice ≥ boatprice 生成所有可能选项的一个表,提供给顾客几种购买选择。
(请试写出下表的sql语句)
select * from 车,船车。carprice > 船。boatprice
除法 (÷除法是写为 r ÷ s 的二元关系。其结果是由只在 r 表的属性列中而不在 s 表中的属性列的构成,并且s 中的元组的所有组合都存在于 r 中。例如下面的“完成”(r)和“db项目”(s)和它们的除法:
select完成。student from完成,db项目。
where完成。task=db项目。task
第三章关系型数据库---设计理论及设计方法。
本章习题。1 跟文科同学解释什么是关系型数据库,不能用数学术语,也不能举例说明。解释不能超出。
2 跟文科同学,假定他知道什么是关系数据库,知道表、列、行、主键、外键等概念,解释什么是第一范式、第二范式、第三范式,不能用数学术语,也不能举例说明。解释不能超出。
1.关系数据库的基本内容是若干张二维**,以及**之间的关联。表及其关联关系。便构成了一个关系型数据库的模型,将其输入到某种关系数据库系统中,便是个关系型数据库。
2.第一范式:表中所有列名(属性)的字段不可以再分。
第二范式: 第二范式满足第一范式,表的非主键列依赖主键; 非主键列之间不能相互依赖;一个表只说明一个事物。
第三范式:第三范式满足第二范式且数据库中可变的数据只在一处做修改更新而不波及其它。
第四章 t-sql 程序控制语句。
本章习题。1 概念和简答(每个问题的答案不得超出,课件全部章节的全部概念和简答题都做如此要求)
1)什么是pl\sql?什么是t-sql?上网查查它们各自的英文全称。
2)对象的完全名字空间有什么用处?
3)什么是对象的同义词?
4)t-sql用户自定义类型的特点?
5)什么是局部变量?什么是全局变量?
6)为什么要分页查询?
7)为什么goto语句不推荐使用?
2本章所有例题(结合上机)阅读理解。
1)sql:structured query language
pl\sql(procedural language/sql)过程化sql语言:oracle数据库对sql语句的扩展。
t-sql(transact-sql)是:sql 在 microsoft sql server 上的增强版。
2)用“..隔开的对象完全名字空间,可以唯一确定一个对象的名字,不会出现不同的对象重名现象。
3)对象的简化引用时的另一个名字。
4)不仅允许自定义类型,而且允许将其加到数据库内置的完整性约束里。
5)局部变量是用户可自定义的变量,其作用范围仅在定义它的程序内有效。局部变量名字前面必需要有@符号,局部变量要先声明后使用,t-sql的全局变量是系统预定义好的,不允许用户自定义。全局变量名字前面是@@。
用户可以在任何时间、用任何程序访问全局变量,直到数据库系统关闭。
6)“多批次,小批量”查询,每次只消耗很少的数据库和网络资源,比一次性返回大量结果集优越得多。
7)无条件跳转会产生难以阅读和维护的“面条**”
第五章并发和事务。本章习题:
1什么是并发程序?什么是异步并发程序?什么是同步并发程序?
2当同步并发程序(1)同时写(2)同时读写(3)同时读共享数据时,那种情况有极小概率发生脏数据(脏读或脏写)?
3什么是原子操作?对并发数据为什么要使用原子操作?
4 什么是事务?
5 事务的缺点是什么?
6 go命令有什么用?
7 能够读懂本章的例题。本章实验:
无要求。【本章所有的例题,仅仅为了便于同学们理解相关的概念。期末考试时,不要求写本章例题相关的sql程序题,只要求读懂例题。】
1.在同一个系统下“同时”运行的多个进(线)程,叫并发程序。这些并发程序,有的是相互无关的,这种并发程序叫异步并发程序。
但是当并发程序之间有相互关联,比如多个进(线)程有共享数据的时候,这种并发程序叫同步并发程序。
2.同步并发程序对共享数据的并发写、并发读写都有可能造成“脏读”或“脏写”。而并发只读不写则不会有脏数据,因为这种情况没有修改共享变量。
3.原子操作,是在操作过程中要一气呵成,不允许被打断的操作。
因为使用原子操作,可以将并发程序变为串行操作,避免产生脏数据。
4.事务:一系列是原子操作的操作步骤。当一个进(线)程在开始执行事务后,中途不允许被别进(线)程打断,直到事务结束。
5.缺点是把并发操作改串行,一个进程执行事务期间是要锁定相关表不让其它进程访问的,会严重降低效率。
是个“批处理”命令,也就是说一个sql 程序以go 作为批结束的信号,一批一批的发送到系统执行。即用go来划分语句的批次。
第六章游标。
1 概念和简答(每题答案不超过)
1)什么是游标(cursor)?游标有什么特点?有什么用途?
2)游标的五个操作步骤是什么?
3)记住以下游标分类**:
4)要求读懂本章的例题。
本章实验:无要求。
本章所有的例题,仅仅为了便于同学们理解相关的概念,期末考试时,只要求读懂本章例题,不要求编写与例题相关的sql程序题。】
1.1)游标是对查询结果集进行逐行处理的指针。
它可以在当前结果集(注意是结果集)中一行一行的移动,对结果集进行以行为单位的细粒度处理(基于游标位置而对表中数据进行删除或更新的能力)。
2)声明游标、打开游标、使用游标、关闭游标、删除游标。
第7章自定义函数。本章习题。
1)什么是存储过程?自定义函数?触发器?
2)触发器有什么特点?
3)读懂本章所有例题。本章实验。
本章所有的例题,仅仅为了便于同学们理解相关的概念,期末考试时,只要求读懂本章例题,不要求编写与例题相关的sql程序题。】
sql课后习题答案
1.create database student 2.create table 学生。学号 char 12 姓名 varchar 20 not null,出生日期 datetime not null,是否党员 bit,班委 char 8 primary key 学号 create table 课程...
SQL命令题答案
011 利用sql select命令将表stock 复制到stock select from stock sl into table stock bk 2 利用sql insert命令插入记录 600028 4.36,4.60,5500 到stock 表。insert into stock bk v...
EDA课后题答案
第一章。1.什么叫eda技术?及狭义定义 书p1 electronic design automation 电子设计自动化。eda的广义定义范围包括 半导体工艺设计自动化 可编程器件设计自动化 电子系统设计自动化 印刷电路板设计自动化 与测试 故障诊断自动化 形式验证自动化统称eda工程。发展历程 ...