当前位置:首页 » 编程语言 » sql范式复习题
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql范式复习题

发布时间: 2022-05-10 14:13:25

A. 我正在学习sql server 2005,我想找点练习题。

我这倒是有两个;练习 但是是word文档 不好复制进来 只能复制点笔试题 要机试题请发给邮件给我 我给你传过来 邮件中说明 是目的 不然我不知道会当垃圾邮件处理的 我的邮箱是 [email protected]

针对以下题目请选择正确答案(每道题目有一个或多个正确的答案)。针对每一道题目,所有答案都选对,则该题得分,否则不得分。
1. 数据库设计的最终目标不包括()。 (选择两项)BD
A. 高效
B. 满足范式要求
C. 安全
D. 表现设计者的技术实力
E. 易用
F. 便于将来扩展功能和容量
2. 有关数据冗余说法错误的是()。(选择一项)C
A. 数据库中,数据存在副本的现象,就是数据冗余。
B. 通过分类存储,可以有效减少数据冗余,但是会增加数据查找的复杂性。
C. 在数据库设计阶段,一定要尽最大可能避免数据冗余,最好做到无数据冗余。
D. 数据冗余通常是由于数据库设计引起的。
3. 用于表示数据库实体之间的关系图是()。A
A. 实体关系图
B. 数据模型图
C. 实体分类图
D. 以上都不是
4. 假定有一个用户表,表中包含字段:userid (int)、username (varchar)、 password(varchar)等,该表需要设置主键,以下说法正确的是()。(选择两项)AB
A. 如果不能有同时重复的username和password,那么username和password可以组合在一起作为主键。
B. 此表设计主键时,根据选择主键的最小性原则,最好采用userid作为主键。
C. 此表设计主键时,根据选择主键的最小性原则,最好采用username和password作为组合键。
D. 如果采用userid作为主键,那么在userid列输入的数值,允许为空。
5. 语句 alter table userinfo add constraint uq_userid unique(userid)执行成功后,为userinfo表的()字段添加了()约束。B
A. userid 主键
B. userid 唯一
C. uq_userid 外键
D. uq_userid 检查
6. 运行如下T-SQL,结果返回包含()的记录集。A
create table scores
(
scoreid int identity(1,2),
score numeric(4,2) not null,
courseid int
)
insert int scores values(90.5,null);
insert into scores values(78.234,2);
select * from scores;
A. 1 90.50 NULL
3 78.23 2
B. 1 78.23 2
C. 1 90.50
D. 1 90.50
2 78.23 2
7. 关于子查询,以下说法正确的是()。(选择两项)AC
A. 一般来说,表连接都可以用子查询替换。
B. 一般来说,子查询都可以用表连接替换。
C. 相对于表连接,子查询适合于作为查询的筛选条件。
D. 相对于表连接,子查询适合于查看多表的数据。
8. 创建存储过程如下:
create procere scoreproc
@scoreid int,@score numeric(4,2) output
as
select @score = score from scores where scoreid=@scoreid
正确的调用是:C
A. exec scoreproc 1,@myscore output
print @myscore
B. exec scoreproc @id = 1,@myscore output
print @myscore
C. declare @myscore numeric(4,2)
exec scoreproc 1,@myscore output
print @myscore
D. declare @myscore numeric(4,2)
exec scoreproc @id = 1,@myscore output
print @myscore
9. 假设需要设计一张表,记录各个作者着作的所有图书信息,表的结构如下:作者(作者名称,图书1,版本1,书价1,图书二,版本2,书价2,…),该表最多符合第()范式。A
A. 一
B. 二
C. 三
D. 不符合任何范式
10. 一个学生只能就读于一个班级,而一个班级可以同时容纳多个学生,学生与班级之间是()的关系。C
A. 一对一
B. 一对多
C. 多对一
D. 多对多
11. E-R图中,关系集用下面()来表示。B
A. 矩形
B. 椭圆形
C. 菱形
D. 圆形
12. 有如下表结构,#号打头字段代表主键或组合主键,一份订单可以订购多种产品。
产品:#产品编号,产品名称,产品价格;
订单:#订单编号,#产品编号,订购日期,订购数量;(订单编号与产品编号是组合主键)
该表最高符合第()范式。B
A. 一
B. 二
C. 三
D. 未规范化的
13. 有如下表结构,#号打头字段代表主键或组合主键,一份订单可以订购多种产品。
产品:#产品编号,产品名称,产品价格;
订单:#订单编号,总价,订购日期;
订单子项: #子项编号,订单编号,产品编号,订购数量;
该表最高符合第()范式。C
A. 一
B. 二
C. 三
D. 未规范化的
14. 创建sql语句如下:
create table userInfo
(
userId int identity(-1,1), 第1行
userName nvarchar(20) not null, 第2行
cardNO char not null, 第3行
age smallint(2), 第4行
address ntext(300) 第5行
)
执行时,会在第()行出现错误。(选择两项)DE
A. 1
B. 2
C. 3
D. 4
E. 5
15. 以下关于规范设计的描述正确的是()。(选择两项)AD
A. 规范设计的主要目的是消除数据冗余。
B. 规范设计往往会增加数据库的性能。
C. 设计数据库时,规范化程度越高越好。
D. 在规范化数据库时,易于维护数据库的完整性。
16. 关于存储过程,以下说法正确的是()。(选择一项)A
A. 不能在存储过程中使用CREATE VIEW命令。
B. T-SQL批代码的执行速度要快于存储过程。
C. 存储过程必须带有参数。
D. 存储过程不能返回结果集。
17. 已知有scores表,scoreid为主键,现在表中共有10条记录,其中一条scoreid=21。
创建视图:
create view view_scores
as
select * from scores
执行如下命令:
delete from view_scores where (scoreid = 21)
再执行如下命令:
select * from scores
select * from view_scores
假定上述命令全部执行成功,将各自返回()()行记录。D
A. 10,10
B. 10,9
C. 9,10
D. 9,9
18. 设计用户表时,身份证号为固定18位长,对该字段最好采用()数据类型。(选择一项)B
A. int
B. char
C. varchar
D. text
19. 授予用户someone对scores表的一些权限,正确的授权语句是()。(选择一项)C
A. grant insert , update to talbe scores on someone
B. grant insert and update to table scores on someone
C. grant insert , update on scores to someone
D. grant insert and update on scores to someone
20. 建立如下数据库表:
create talbe Department(
departID int not null primary key,
deptName varchar(20) not null
)
create table Employee(
employeeID int not null,
deptID int not null,
name varchar(20) not null
)
要想保证Employee表中每一个雇员(employee)是唯一的,且只能属于在Department表中已经存在的部门,最有的做法是()。(选择一项)B
A. 把employeeID和deptID设为组合主键。
B. 把employeeID设为主键,同时在deptID列上创建一个外键约束。
C. 把employeeID设为主键,同时在deptID列上创建一个检查约束。
D. 在deptID列上创建一个唯一约束,同时在deptID列上创建一个外键约束。
21. 建立一张员工表,当向表中插入数据时,若不提供入职时间,就把系统当前时间作为员工入职时间插入数据库,以下说法正确的是()。(选择一项)D
A. 约束不能使用各种函数,所以无法实现要求的功能。
B. 可以使用CHECK约束实现,默认值采用日期函数getDate()。
C. 入职时间必须设为日期类型。
D. 可以使用DEFAULT约束实现,默认值采用日期函数getDate()。
22. 为了加快对某表查询的速度,应对此表建立()。(选择一项)D
A. 约束
B. 存储过程
C. 规则
D. 索引
23. 假设有表student(学生)的设计如下:
id () 标识列
name () 学生姓名
address () 学生地址
department () 所属院系
departmentHead () 学院主管
该表最高满足()范式。(选择一项)B
A. 一
B. 二
C. 三
D. 不满足任何范式
24. 为数据库中一个或者多个表中的数据提供另外一种查看方式的逻辑表被称为()。(选择一项)C
A. 存储过程
B. 数据库关系图
C. 视图
D. 表
25. 要建立一个教师表,包含姓名、职称、级别等字段。若插入数据时,级别字段如果不输入,缺省值为“讲师”,最合适的实现方式是()。A
A. 为“级别”字段建立default约束。
B. 为“级别”字段建立check约束。
C. 为教师表数据输入编写一个存储过程进行控制。
26. 现有订单表orders,包含数据如下表。若查询既订购了产品p01,又订购了产品p02的顾客编号,可以执行以下()sql语句。(选择两项)CD

A. select distinct (cid) from orders ol where ol.pid in ('p01','p02')
B. select distinct (cid) from orders ol where ol.pid = 'p01' and ol.pid = 'p02'
C. select distinct (o1.cid) from orders o1,orders o2 where o1.pid='p01' and o2.pid='p02' and o2.cid = o1.cid
D. select distinct(cid) from orders where pid = 'p01' and cid in(select cid from orders where pid='p02')
27. 关于聚集索引,以下()说法是错误的。(选择两项)CD
A. 一个表最多只能创建一个聚集索引。
B. 聚集索引比非聚集索引有更快的访问速度。
C. 主键一定是聚集索引。
D. 创建了聚集索引的列不允许有重复值。
28. 关于视图,以下()说法是错误的。(选择一项)C
A. 使用视图,可以简化数据的使用。
B. 使用视图,可以保护敏感数据。
C. 视图是一种虚拟表,视图中的数据只能来源于物理数据表,不能来源于其他视图。
D. 视图中指存储了查询语句,并不包含任何数据。
29. 常用的存储过程不包括()。(选择一项)D
A. sp_tables
B. sp_columns
C. sp_stored_proceres
D. sp_renametable
30. 对事务的描述错误的是()。(选择2项)BD
A. 一个事务中的所有命令作为一个整体提交或者回滚。
B. 如果两个并发事务要同时修改一个表,可能产生死锁。
C. SQL Server默认将每条单独的T-SQL语句视为一个事务。
D. 事务必须使用begin transaction来明确制定事务的开始。
31. 分数表scores设计如下:
courseID(课程编号)
studentID(学生编号)
score(分数)
另有一个学生信息表student,包含studentID,sname(学生姓名)。
已知并非所有学生都参加了courseID为0001的考试,现在查询所有参加0001号课程考试及格学生的学生姓名,下面正确的是()。(选择一项)A
A. select sname from student where studentID in (select studentID from scores where courseID = 0001 and score>=60)
B. select sname from student where studentID = (select studentID from scores where courseID = 0001 and score>=60)
C. select sname from student where studentID not in (select studentID from scores where courseID = 0001 and score<=60)
D. select sname from student where studentID exists (select studentID from scores where courseID = 0001 and score>=60)
32. 在()的列上更适合创建索引。(选择两项)AD
A. 需要对数据进行排序
B. 具有默认值
C. 频繁更改
D. 频繁搜索
33. SQL Server数据库有2种登录认证方式。其中在()方式下,需要客户端应用程序连接时提供登录时需要用户标识和密码。C
A. Windows身份认证。
B. 以超级用户身份登录。
C. SQL Server身份认证。
D. 以系统身份登录时。
34. SQL Server数据库中,下列不属于T-SQL事务管理语句的是()。(选择一项)B
A. BEGIN TRANSACTION;
B. END TRANSACTION;
C. COMMIT TRANSACTION;
D. ROLLBACK TRANSACTION;
35. 要建立一个约束,保证用户表(user)中年龄(age)必须在16岁以上,下面语句正确的是()。(选择一项)A
A. alter table user add constraint ck_age CHECK(age>16)
B. alter table user add constraint df_age DEFAULT(16) for age
C. alter table user add constraint uq_age UNIQUE(age>16)
D. alter table user add constraint df_age DEFAULT(16)
36. SQL Server数据库中,包含两个表:Order订单表,Item订单子项目表。当一个新订单被加入时,数据要分别保存到Order和Item表,要保证数据完整性,可以使用以下()语句。(选择一项)C
A. BEGIN TRASACTION
INSERT INTO Order VALUES(此处省略)
INSERT INTO Items VALUES(此处省略)
END TRASACTION
B. BEGIN TRASACTION
INSERT INTO Order VALUES(此处省略)
INSERT INTO Items VALUES(此处省略)
IF(@@Erro = 0)
COMMIT TRASACTION
ELSE
ROLLBACK TRASACTION
C. BEGIN TRASACTION
INSERT INTO Order VALUES(此处省略)
IF(@@Erro = 0)
INSERT INTO Items VALUES(此处省略)
IF(@@Erro = 0)
COMMIT TRASACTION
ELSE
ROLLBACK TRASACTION
ELSE
ROLLBACK TRASACTION
D. BEGIN TRASACTION
INSERT INTO Order VALUES(此处省略)
INSERT INTO Items VALUES(此处省略)
IF(@@Erro <> 0)
ROLLBACK TRASACTION
37. 现有一个学生信息表student,包含主键studentID(学生编号)。又有分数表scores,包含studentID(学生编号)、以及score(考试分数)。已知student表中共有50个学生,有45人参加了考试(分数存在scores表中),其中10人不及格。执行以下SQL语句:
select * from student where exists(select studentId form score where score<60)
可返回()条记录。(选择一项)A
A. 50
B. 45
C. 10
D. 0
38. create table student
(
id int identity(1,1),
name varchar(20)
)
alter table student add constraint uq_name unique(name)
insert into student values(null)
insert into student values(null)
insert into student values('jack')
insert into student values('jack')
依次执行以上SQL语句后,student表中存在()行记录。B
A. 1
B. 2
C. 3
D. 4
39. 已知employee表中具有默认约束df_email,删除该约束的语句为()。(选择一项)A
A. alter talbe employee drop constraint df_email
B. alter talbe employee remove constraint df_email
C. alter talbe employee delete constraint df_email
D. remove constraint df_email from talbe employee
40. 在employee表的firstname字段上建立的非聚集索引的物理效果是()。(选择一项)D
A. 所有的行按照firstname字段值升序排列并物理地存储在数据页中
B. 索引中的项按照索引键值的顺序存储,但表中信息的顺序保持不变。
C. 所有的行按照firstname字段值降序排列并物理地存储在数据页中
D. 所有的行被物理地存储在数据页上,并且根据firstname字段按照索引建立时指定的顺序排列
41. 创建存储过程的片断如下:创建成功后,以下()调用方式是正确的。(选择一项)B
create procere proc_score
@passed int = 60,
@count int output
as
select count(*) from scores where score < @passed
A. execute proc_score @count int output
B. declare @count int
execute proc_score 70,@count output
C. declare @count int output
execute proc_score 70,@count
D. execute proc_score 70,@count output
42. 现有学生表Students和用户表Users,两表中的数据如下:
执行sql语句:select * from Users union select * from Students。下列说法正确的是()。(选择一项)A
Users Students
userID(int) name (varchar) studentID(int) age(int)
1 Wen 1 80
2 Shu 2 75
3 Gao
4 Shui
A. 出现错误:name与age不是同一数据类型。
B. 正确执行,返回6行4 列。
C. 正确执行,返回6行2 列。
D. 正确执行,返回4行2列。
43. 假设有scores表的设计如下:
ID(编号,主键)
StudentID(学生编号)
CourseID(课程编号)
Score(分数)
现在要查询参加过至少两门课程考试的学生各门课程的平均成绩。以下SQL语句正确的是()。(选择一项)A
A. select StudentID,avg(score) from scores group by StudentID having count(studentID)>1
B. select StudentID,avg(score) from scores group by StudentID where count(studentID)>1
C. select StudentID,avg(score) from scores group by StudentID where count(studentID)>1 group by StudentID
D. select StudentID,avg(score) from scores having count(studentID)>1
44. 假设orders表中存在orderid等于1的纪录,执行下面T-SQL:
begin transaction
delete from orders where orderid = 1
if (@@error<>0)
rollback transaction
rollback transaction
以下说法正确的是()。(选择一项)B
A. 执行成功,orderid为1的记录被永久删除。
B. 执行成功,orders表没有任何变化。
C. 执行时出现错误。
D. 执行成功,但事务处理并没有结束。
45. 项目开发需要经过几个阶段,绘制数据库的E-R图应该在()阶段进行。(选择一项)B
A. 需求分析
B. 概要设计
C. 详细设计
D. 代码编写
46. 将E-R图转换为表的过程中,如果实体之间存在多对多的关系,通常的做法是()。(选择一项)B
A. 在两个实体间建立主外键关系。
B. 在两个实体间建立关联表,把一个多对多的关系分解成两个一对多的关系。
C. 在两个实体间建立关联表,把一个多对多的关系分解成两个一对一的关系。
D. 在两个实体间不建立任何关系。
47. 某个字段希望存放电话号码,该字段应选用()数据类型。
A. char(10)
B. text
C. varchar(13)
D. int
48. 运行以下语句得到的结果是()C
use javaWebDB
create table numbers
(
N1 INT,
N2 NUMERIC(5,0),
N3 NUMERIC(4,2),
)
INSERT numbers VALUES(100,100.5,10.5)
select * from numbers
A. 返回100,100,10.5的结果集
B. 返回100,100,10.50的结果集
C. 返回100,101,10.50的结果集
D. 语句无法全部成功执行
49. 数据库事务处理具有如下特征(),被简称为ACID。(选择四项)ACEF
A. 原子性
B. 安全性
C. 隔离性
D. 完整性
E. 持久性
F. 一致性
50. SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,其中,CREATE、DROP、ALTER语句是实现哪种功能( )。C
A. 数据查询
B. 数据操纵
C. 数据定义
D. 数据控制

B. SQL Server 数据库 范式问题

第一范式(1NF)无重复的列
第二范式(2NF)属性
完全依赖于主键[消除非主属性对主码的部分函数依赖]
第三范式(3NF)属性
不依赖于其它非主属性[消除传递依赖]

两个属性组成的关系必为2NF,因为两个属性组成 的关系的码只有三种情况:全码;两个分别为码; 的关系的码只有三种情况:全码;两个分别为码; 其中一个是码 关系模式R<U,F> 关系模式R<U,F> 其中:U={A,B,C,D},分别讨论关系模式R 其中:U={A,B,C,D},分别讨论关系模式R是否满足 2NF。 2NF。
1)F={A→B,B→C,C→D,D→A} 2NF,因为没有非主属性 因为没有非主属性;
R是2NF,因为没有非主属性;
2)F=Φ 2)F=Φ 2NF,因为没有非主属性 因为没有非主属性;
R是2NF,因为没有非主属性;
5.2.4 2NF 3)F={A→B,B→A,A→C} 候选码为(A,D),(B,D) 因为存在非主属性C (A,D),(B,D)。 候选码为(A,D),(B,D)。
因为存在非主属性C对码 A,D)的部分函数依赖 所以R不是2NF 的部分函数依赖, 2NF。
(A,D)的部分函数依赖,所以R不是2NF。
规范化:由于A→C造成R不是2NF 所以分解为: A→C造成 2NF, 规范化:由于A→C造成R不是2NF,所以分解为: R1(A,C)和R2(A,B,D)均为 均为2NF. R1(A,C)和R2(A,B,D)均为2NF.
4)F={(A,B)→C,D→A} 候选码为(B,D), 因为存在非主属性A对码( 候选码为(B,D), 因为存在非主属性A对码(B,D) 的部分函数依赖,所以R不是2NF
2NF的部分函数依赖,所以R不是2NF;
规范化:由于D→A造成R不是2NF 所以分解为: D→A造成 2NF, 规范化:由于D→A造成R不是2NF,所以分解为: R1(A,D)和R2(B,C,D)均为 均为2NF. R1(A,D)和R2(B,C,D)均为2NF.
另解: (A,B,C),R (A,B,D)进一步 分解为 (A,B,C),R’’(A,B,D)进一步R 另解:R’(A,B,C),R (A,B,D)进一步R’’分解为 R1”(A,D),R2 (A,D),R2”(B,D) R1 (A,D),R2 (B,D) 5.2.4 2NF 5)F={(A,B)→C,C→A} 候选码为(A,B,D) (B,C,D),因为没有非主 (A,B,D)和 候选码为(A,B,D)和(B,C,D),因为没有非主 属性, 所以, 2NF。
属性, 所以,R是2NF。 结论: 结论: 单个属性组成候选码的关系一定是2NF; 单个属性组成候选码的关系一定是2NF; 两个属性组成的关系一定是2NF;

没有非主属性的关系一定是2NF; 没有非主属性的关系一定是2NF; All-Key的关系一定是 的关系一定是2NF. All-Key的关系一定是2NF. 5.2.5 3NF 定义5.7 关系模式R U,F〉中若不存在这样的码X, 定义5.7 关系模式R〈U,F〉中若不存在这样的码X, 属性组Y及非主属性Z(Z Y)使得X→Y,(Y→X) Z(Z? 使得X→Y, 属性组Y及非主属性Z(Z?Y)使得X→Y,(Y→X) Y→Z,成立 则称R 成立, ∈3NF。

Y→Z,成立,则称R〈U,F〉∈3NF。 由定义5.7可以证明, R∈3NF, 5.7可以证明 由定义5.7可以证明,若R∈3NF,则每一个非主属 性既不部分依赖函数于码也不传递函数依赖于码。
性既不部分依赖函数于码也不传递函数依赖于码 等价定义:关系模式R U,F〉∈2NF, 等价定义:关系模式R〈U,F〉∈2NF,且每一个非 主属性都不传递函数依赖于码,则称R 主属性都不传递函数依赖于码,则称R〈U,F〉 ∈3NF。 ∈3NF。

判断3NF的方法是先判断2NF,然后检查有无非主属 3NF的方法是先判断2NF, 判断3NF的方法是先判断2NF,然后检查有无非主属 性对码的传递函数依赖 5.2.5 3NF 关系模式SC(SNO,CNO,G) (SNO,CNO)→G没 关系模式SC(SNO,CNO,G) (SNO,CNO)→G没 有非主属性对码的传递依赖, SC∈3NF; 有非主属性对码的传递依赖,故SC∈3NF;

C. sql 范式 1NF=>2NF=>3NF=>BCNF=>4NF=>5NF 问题

1NF:不说实体直接说表。若一个表中的所有列不能再拆分,则满足1NF。
例:客户目录表----客户编码、客户名称、家庭地址、工作单位、联系电话... ...非1NF
原因:联系电话可以分为家庭电话、单位电话、移动电话等等。
2NF:满足1NF的同时,每个列只能依赖于候选主键,不能依赖于不是非候选主键的列。
例:销售明细表----顾客编码、商品编码、商品名称、销售单价、销售数量、销售金额.....非2NF
原因:候选主键是顾客编码+商品编码,所有其它列都依赖于候选主键,但商品名称又依赖于
商品编码,因此此表不是2NF
3NF:满足2NF的同时,不能存在传递依赖。
传递依赖---A依赖于B,B又依赖候选主键,A传递依赖候选主键
例:销售明细表----顾客编码、商品编码、销售单价、销售数量、销售金额.....非3NF
(这里设销售单价不依赖商品编码,可以降价、打折等)
原因:候选主键是顾客编码+商品编码,所有其它列都依赖于候选主键,但销售金额又依赖于
销售单价+销售数量,形成了销售金额-->销售单价+销售数量-->候选主键,成了传递依
赖关系。因此,此表不满足3NF。去掉销售金额就是3NF了。
至于BCNF以上基本就不适用了。NF太高需要大量连接查询,数据库的性能急剧下降,不可取。

D. 请求sql范式问题

既然你这样说了··
那就说说我的理解吧··
第一范式:就是确保每列的原子性即属性不能再分就属性为最小的单元··比如说人的姓名就不可以再分了·
第二范式:就是把每个对象里的冗余再拆分·分为对个对象··就多个表··一表一对象
第三范式:就是建关系·将第二范式中拆分的表建好关系·就OK
其他范式可以不用再理解了·
主要看客户的要求·

E. 最高分求SQL Server试题,考试要用,急!

一、填空题
1、beautiful、我心中的太阳--(去掉了右边的空格)
2、实体、域
3、视图
4.13.4300、13.4570--(保留2位和三位小数,但总位数不变)
5、数据定义语言(DDL)、数据操作语言(DML)
6、网状、关系、关系
7、二维表、属性、元组
8、一对一、一对多、多对多
9、%、_
二、选择题
1、C
2、B
3、A
4、A
5、C
6、D
7、A
8、C
9、D
10、B
11、A
12、A
13、B
14、B
15、B
三、判断题
1、√
2、ⅹ
3、ⅹ----会取整(12)
4、ⅹ
5、ⅹ--物极必反,多了存储数据时会消耗较多系统资源
6、ⅹ--连接、投影结果是不一样的
7、ⅹ--视图上可以创建触发器,但与表功能不相同
8、ⅹ
9、√
10、√
四、简答题
(一)
区别:
1、视图是已经编译好的sql语句。而表不是
2、视图没有实际的物理记录。而表有。
3、表是内容,视图是窗口
4、表只用物理空间而视图不占用物理空间,视图只是逻辑概念的存在,表可以及时四对它进行修改,但视图只能有创建的语句来修改
5、表是内模式,试图是外模式
6、视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些SQL语句的集合。从安全的角度说,视图可以不给用户接触数据表,从而不知道表结构。
7、表属于全局模式中的表,是实表;视图属于局部模式的表,是虚表。
8、视图的建立和删除只影响视图本身,不影响对应的基本表。
视图优点:1、聚焦特定的数据。
2、简化数据操作
3、定制用户数据
4、对重构数据库提供了一定程度的逻辑独立性
5、合并分离的数据
6、屏蔽数据库的复杂性
7、简化用户权限的管理
8、便于数据的共享
(二)
含义:
存储过程(Stored Procere)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。
语法:
CREATE PROCEDURE [拥有者.]存储过程名[;程序编号]
[(参数#1,…参数#1024)]
[WITH
{RECOMPILE | ENCRYPTION | RECOMPILE, ENCRYPTION}
]
[FOR REPLICATION]
AS 程序行

F. sql数据库习题,规范化过程中的范式及模式分解问题

  1. (1) 试说明R不是2NF模式的理由。

    存在部分依赖,所以R不是2NF

(2) 试把R分解成2NF模式集。

R1(ABC),R2(AD) 说明:消除部分依赖关系

2.(1)R存在传递依赖。

(2)R1(CB),R2(BA) 说明:消除传递依赖关系

G. SQL数据库关系模式的题目

1、S最高为第二范式。因为主键是学号,所以有学号->(姓名,系名,住处),
又有系名->(住处),所以存在传递依赖
2、由于存在传递依赖,所以存在数据插入异常。如新设立的系名,还没有学生时,因为学号为空,所以导致新系名无法插入
3、分解为第三范式:
S1:学号,姓名,系名
S2:系名,住处

H. 一道关于SQL范式的题目

这种纯理论的东西不会。这种东西学了也没用。当然用来考试除外。

I. SQL范式问题

1.3NF 因为非主属性为空

2.最高??应该是最低吧 最低是2NF 因为不存在非主属性对候选关键字的部分依赖