数据库考前最后一练

考核目标:

课程目标

对应指标点

要求说明

对应模块

考试分值

CO1

基本知识与原理方法

CM1-CM7

40

CO2

GR3.4

数据库设计建模能力

CM4

15

CO3

GR4.2

数据库SQL编程与数据库管理能力

CM3,CM5

15

CO4

GR5.3

数据库应用编程与复杂工程问题

CM3,CM6

30

试卷题型:

 试卷题型

  1. 单选题(20分,每小题1分,20题)
  2. 判断题(20分,每小题1分,20题)
  3. 应用题(20分,每小题5分,4题)
  4. 编程题(30分,每小题5分,6题)
  5. 设计题(10分,每小题10分,1题)

各章节所占分数比例

选择题: 全部七章占比相同

判断题: 全部七章占比相同

应用题:3、4、5、6章各一提(类似简答,比简答偏应用)

编程题:第三章 20分 5、6章各一题5分

设计题: 第四章 10分(E_R图)

第三章:难度和实验测评类似。

第四章:实体数量不超过6个的CDM图。

第五章:课件中的图表,给出部分,完成剩余部分;代码:加锁协议;

第六章:课件中的图表,给出部分,完成剩余部分;代码:JDBC、存储过程、触发器、游标;

以课件为主,第五、六章代码题的形式包括:自主完成;给出部分代码,完成剩余部分;书写代码注释;

第七章只有选择和对错,复习概念性的内容

第1章 数据库系统概论

第2章 关系数据模型

1.笛卡尔积

数据库考前最后一练_第1张图片

 数据库考前最后一练_第2张图片

2.并union

数据库考前最后一练_第3张图片

4行,求同存异

数据库考前最后一练_第4张图片

 3.交intersect

数据库考前最后一练_第5张图片

2行,求同

数据库考前最后一练_第6张图片

 3.差except

 数据库考前最后一练_第7张图片

R去同留异

数据库考前最后一练_第8张图片

4.积cross join on

数据库考前最后一练_第9张图片

 6列9行

数据库考前最后一练_第10张图片

5.查询、投影

选择sigma 投影π,sigma dept='IS'(Student)

数据库考前最后一练_第11张图片

 sigma age<20(Student)

数据库考前最后一练_第12张图片

 

 πSname,depc(Student)

数据库考前最后一练_第13张图片

πdepc(Student)

数据库考前最后一练_第14张图片

6.连接

数据库考前最后一练_第15张图片

 错了:我写错成自然连接了,现在是条件连接

 数据库考前最后一练_第16张图片

 数据库考前最后一练_第17张图片

 数据库考前最后一练_第18张图片

等值连接

数据库考前最后一练_第19张图片

 数据库考前最后一练_第20张图片

数据库考前最后一练_第21张图片

自然连接

数据库考前最后一练_第22张图片

数据库考前最后一练_第23张图片

数据库考前最后一练_第24张图片

数据库考前最后一练_第25张图片

数据库考前最后一练_第26张图片

数据库考前最后一练_第27张图片

左外连接

数据库考前最后一练_第28张图片

数据库考前最后一练_第29张图片

第3章 SQL语言 

数据库创建

creat database CourseDB;

数据库考前最后一练_第30张图片

 数据库修改

错: alter CourseDB rename to CourseManageDB;

应该为:

alter database CourseDB rename to CourseManageDB;

删除数据库

drop database CourseMangerDB;

创建表

数据库考前最后一练_第31张图片

creat table Student(

StudentID char(13) not null primary key,

StudentName varchar(10) not null,

 ... char(2),

...data,

...varchar(30),

...char(11)

);

创建表2

数据库考前最后一练_第32张图片

 creat table Course(

... char(4) not null primary key,

...vc(20) not unique,

...vc ...check in('...','...'),                 错误,改为check(...in ('..','..','..'))

... smallint

vc... default '....'

);

 数据库考前最后一练_第33张图片

 表3

数据库考前最后一练_第34张图片

 ...

...

...

...

constraint ..._PK primary key(...,..)        没记住

);

数据库考前最后一练_第35张图片

 表4

数据库考前最后一练_第36张图片

 。。。

... series not null,        错了:改为serial

...

constraint .._PK primary key (...);        漏了

);

数据库考前最后一练_第37张图片

表5

数据库考前最后一练_第38张图片

 ...

... serial ...,

... bigint not..,

contraint ... pri.. c..,

contraint ... foreign key (C..) reference from table ...;        错了:改为references Plan(CourseID) on delect cascade;

数据库考前最后一练_第39张图片

修改表

 

 alter table Student add email varchar(255);

删除表

drop table Register;        没有alter

 创建索引

 creat index B_idx on Student(Birthday);        漏了

修改索引

 alter index b.. rename to b...;

 删除索引

drop index b。。;

数据插入

 insert into table Student values('....',);        错误:多余 ,改为:insert into Student values('....',);  

数据更新

insert into Student(email) '...' where Sname='...';

改为

updata Student

set Email=‘。。。’

where StudentName='..';

数据库考前最后一练_第40张图片

数据删除

drop Student where SN='';

改为

delete

from student

where SN='';

数据库考前最后一练_第41张图片

数据查询

数据库考前最后一练_第42张图片

 select ...,..,... from Student;

 

..*...

查询去重

 select distinct * from...

选择查询

数据库考前最后一练_第43张图片

 select * ... where S..gender='..';

数据库考前最后一练_第44张图片

 

 select ...,...,... ....

 select * ...where bir.. between '...' and '...';

数据库考前最后一练_第45张图片

 

 select .... where ... like '%@163.com';

 select ..where ..and  ...;

数据库考前最后一练_第46张图片

...where ...in('...');

降序查询

 ...order by ... desc        忘记了

数据库考前最后一练_第47张图片

 先降序后升序查询

 ..order by ... DESC,order by ...ASC;        多了,改为 ..order by ... DESC, ...ASC; 

聚集函数

数据库考前最后一练_第48张图片

 

 select count(*) as 学生人数 from student;        漏了

 数据库考前最后一练_第49张图片

最大最小顺序

 select max(age),min(age) as .. ,.. from ...;

顺序不对,改为 max(bir.. ) as...,min(b...) as ...

分组

 select * f.. s.. group by major;

改为

 select major as 专业 ,count(StudentID)as学生人数    f.. s.. group by major;

限定分组查询

 select major as ..,count(SI) as ... from student  group by major having count(SI)>2;                漏,错

  select major as ..,count(SI) as ... from student where SG='男' group by major having count(*)>2;  

数据库考前最后一练_第50张图片

子查询

数据库考前最后一练_第51张图片

select ...from teacher where CI in (select CI from C where CN='...');

数据库考前最后一练_第52张图片

 多表关联数据库考前最后一练_第53张图片

select ... from t,c where t.ci=c.ci and CN='..'

数据库考前最后一练_第54张图片

数据库考前最后一练_第55张图片

 内连接

数据库考前最后一练_第56张图片

 数据库考前最后一练_第57张图片

内连接2

数据库考前最后一练_第58张图片

数据库考前最后一练_第59张图片

 外连接

数据库考前最后一练_第60张图片

数据库考前最后一练_第61张图片

授予权限

 grant insert,alter,delect,select table register to RoleS;        错了:数据修改用update,表用on

改为

grant insert,update,delect,select on register to RoleS;  

 权限收回

 revoke delect on register from Roles;

拒绝权限

 deny delect on teacher to RoleT;       忘了

创建视图

 create view Basic... from  ..;

改为

creat view B... as select ...from...where ...='';

数据库考前最后一练_第62张图片

访问视图

 select * from view B.. order by  CN;        多了:改为 select * from B.. order by  CN;  

数据库考前最后一练_第63张图片

 删除视图

 drop view B...;

视图应用

 

 数据库考前最后一练_第64张图片

数据库考前最后一练_第65张图片

数据库考前最后一练_第66张图片

数据库考前最后一练_第67张图片

数据库考前最后一练_第68张图片

训练

数据库考前最后一练_第69张图片

数据库考前最后一练_第70张图片

数据库考前最后一练_第71张图片

数据库考前最后一练_第72张图片

 第4章 数据库设计

范式

数据库考前最后一练_第73张图片

1NF

数据库考前最后一练_第74张图片

 主键和属性分别为表

数据库考前最后一练_第75张图片

 2NF

找到两个主键缺一不可,能推出的属性为一张表,然后主键各自领养属性

 数据库考前最后一练_第76张图片

3NF

 数据库考前最后一练_第77张图片

数据库考前最后一练_第78张图片

数据库考前最后一练_第79张图片

BCNF

数据库考前最后一练_第80张图片

 

数据库考前最后一练_第81张图片

4NF

数据库考前最后一练_第82张图片

 数据库考前最后一练_第83张图片

 第5章 数据库管理

事物定义

事物提交

begin transaction

SQL

。。。

commit

end transaction

事物撤销

begin transaction

SQL

。。。

rollback

end transaction

pg_dump备份数据库

cd \program files\PostgreSQL\12\bin


pg_dump -h localhost -U postgres -p 5432 -d coursedb -c -C
-f f:\databackup\coursedb.backup

数据库考前最后一练_第84张图片

 数据库考前最后一练_第85张图片

psql恢复数据库

psql -h 127.0.0.1 -U postgres -p 5432 -f f:\databackuplcoursedb.backup

数据库考前最后一练_第86张图片

 pg_dumpall备份数据库

pg_dumpall -h localhost -U postgres -p 5432 -c -C -f f:\databackup\coursedb.backup        没有-d

数据库考前最后一练_第87张图片

ER图绘画

数据库考前最后一练_第88张图片

 数据库考前最后一练_第89张图片

数据库考前最后一练_第90张图片

 创建用户

 creat user "userA" with

login

nosuperuser

nocreatedb

nocreaterole

inherit

noreplication

connection limit -1

password '123456';

数据库考前最后一练_第91张图片

修改用户权限

数据库考前最后一练_第92张图片

alter user "userA"

conncection limit 10        没有逗号

password 'gres123';

数据库考前最后一练_第93张图片

删除用户

 drop user "userA";

授权用户

数据库考前最后一练_第94张图片

 数据库考前最后一练_第95张图片

 创建角色:要“角色名”

数据库考前最后一练_第96张图片

数据库考前最后一练_第97张图片

 角色授权

数据库考前最后一练_第98张图片

 数据库考前最后一练_第99张图片

第6章 数据库编程

JDBC加载驱动

 

 建立连接

数据库考前最后一练_第100张图片

 数据库考前最后一练_第101张图片

创建Statement对象

执行SQL语句

 数据库考前最后一练_第102张图片

数据库考前最后一练_第103张图片

resultset保存结果集

数据库考前最后一练_第104张图片

 数据库考前最后一练_第105张图片

关闭连接

 数据库考前最后一练_第106张图片

JDBC例子

数据库考前最后一练_第107张图片

数据库考前最后一练_第108张图片

 创建存储过程

 create or replace function ...()

returns integer AS $$

declare

        count int;

begin

        select...;

end;

$$ language plpgsql;

数据库考前最后一练_第109张图片

数据库考前最后一练_第110张图片

执行存储过程

数据库考前最后一练_第111张图片

 select countRecords();

数据库考前最后一练_第112张图片

 select into res countRecords();

数据库考前最后一练_第113张图片

删除存储过程

drop function if exists testExec();

 

数据库考前最后一练_第114张图片

 PL、SQL语法

 数据库考前最后一练_第115张图片

数据库考前最后一练_第116张图片

数据库考前最后一练_第117张图片

数据库考前最后一练_第118张图片

创建触发器函数

数据库考前最后一练_第119张图片

 数据库考前最后一练_第120张图片

 

数据库考前最后一练_第121张图片

 创建触发器

 

 

 数据库考前最后一练_第122张图片

修改触发器

删除触发器

 

 

 数据库考前最后一练_第123张图片

游标

数据库考前最后一练_第124张图片

 

数据库考前最后一练_第125张图片

数据库考前最后一练_第126张图片

数据库考前最后一练_第127张图片 数据库考前最后一练_第128张图片

嵌入式SQL语句

 C

 数据库考前最后一练_第129张图片

 数据库考前最后一练_第130张图片

数据库考前最后一练_第131张图片

JAVA

数据库考前最后一练_第132张图片

数据库考前最后一练_第133张图片

数据库考前最后一练_第134张图片

数据库考前最后一练_第135张图片

第7章 NoSQL 数据库技术

NoSQL理论基础:

    CAP理论:一致性、可用性、分区容忍性。

    BASE模型:基本可用、软状态、最终一致性。

    最终一致性理论:因果一致性、读一致性、会话一致性、单调读一致性、单调写一致性。

NoSQL数据库分类:

    键值对存储方式:Redis

    列存储方式:HBase

    文档存储方式:MongoDB

    图形存储方式:Neo4j

你可能感兴趣的