当前位置: 首页 > news >正文

数据库原理期末考试速成--最后附带两套题

引言

为什么从3开始呢,毕竟是速成吗,总要放弃一些东西

前两章1.概论 2.关系数据库:这里面都是一些运算符什么的,我感觉都学这个:笛卡尔积之列的都会算

这两章比较重要的我就放在这里了

选择、投影、连接、除、并、交、差,其中选择、投影、并、差、笛卡尔积是5种基本关系操作

数据库独立性

物理独立性:应用程序与磁盘上的数据库相互独立

逻辑独立性:应用程序与数据库的逻辑结构是相互独立的

数据独立性:这个是由数据库二级映像实现的

数据库主要由二级映像和三级模式

三级模式:内模式,外模式,模式,对应关系如下

二级映像:外模式/模式映像:保证逻辑独立性,内模式/模式映像:保证物理独立性

ER图:

实体,用矩形框表示

属性,用椭圆表示

联系,使用菱形表示

不说了:上图

 

3.数据库语言SQL

SQL基本概念 

数据库SQL分为嵌入式(嵌入到其他语言中)和交互式

数据库中的动词

基本表:本身独立存在的表

存储文件:逻辑结构组成了关系数据库的内模式,物理结构是任意的,对用户透明

视图:从一个或者几个基本表中导出的表,数据库中只存放视图的定义而不存放对应的数据

SQL的数据定义功能

数据库定义语言中的删除使用drop

 模式

定义模式

为用户WANG定义一个模式名称为S-T

CREATE SCHEMA “S-T” AUTHORIZATION WANG;
create schema "S-T" authorization wang;

如果没有指定用户名称,那么名称默认为用户名

模式实际上相当于一个命名空间,mysql是不支持模式的

删除模式

DROP SCHEMA <模式名> <CASCADE|RESTRICT>
drop schema <模式名> <cascdde|restrict>

cascade 级联(数据库中删除可用选项,使用这个,模式下属对象也会删除)

restrict 限制 (数据库中加上这个,如果删除的模式存在下属对象,就不会删除)

基本表

基本表的定义

CREATE TABLE <表名>
(<列名> <数据类型>[ <列级完整性约束条件> ]
[,<列名> <数据类型>[ <列级完整性约束条件>] ] …
[,<表级完整性约束条件> ] );
< 表名 > :所要定义的基本表的名字
< 列名 > :组成该表的各个属性(列)
< 列级完整性约束条件 > :涉及相应属性列的完整性约束条件
< 表级完整性约束条件 > :涉及一个或多个属性列的完整性约束条件

完整性约束包括:primary key:主键约束。unique:唯一键约束 

foreign  key(属性) reference 表名(属性名) :表示该表的对应属性列参照表2的对应属性

数据库中数据类型(不需要记忆)

修改基本表

ALTER TABLE <表名>
[ ADD[COLUMN] <新列名> <数据类型> [ 完整性约束 ] ]
[ ADD <表级完整性约束>]
[ DROP [ COLUMN ] <列名> [CASCADE| RESTRICT] ]
[ DROP CONSTRAINT<完整性约束名>[ RESTRICT | CASCADE ] ]
[ALTER COLUMN <列名><数据类型> ] 

不论基本表中原来是否已有数据,新增加的列一律为空值

删除基本表

DROP TABLE <表名>[RESTRICT|CASCADE];
索引

建立索引目的:加快查询速度

一般采用B+树、HASH索引来实现

B+树具有动态平衡的特点,且可以实现顺序查找,各个结点查找速率一致,HASH索引查找速度快

索引是关系数据库内部实现技术,属于内模式范畴

CREATE [UNIQUE] [CLUSTER] INDEX <索引名>
ON <表名>(<列名>[<次序>][,<列名>[<次序>] ]…);

 修改索引名称

ALTER INDEX <旧索引名> RENAME TO <新索引名>

删除索引

DROP INDEX <索引名>;
数据查询 
SELECT [ALL|DISTINCT] <目标列表达式>[,<目标列表达式>] …FROM <表名或视图名>[,<表名或视图名>] …[WHERE <条件表达式>][GROUP BY <列名1> [HAVING <条件表达式>]][ORDER BY <列名2> [ASC|DESC]];

 

聚集函数

count sum avg max min 一个五个

集合查询:

并操作:union

交操作:intersect

差操作:except

数据更新

数据插入:分为元组插入和子查询插入

INSERT INTO <表名> [(<属性列1>[,<属性列2 >…)]VALUES (<常量1> [,<常量2>]    …           )INSERT INTO <表名>  [(<属性列1> [,<属性列2>…  )]子查询;

数据更新 

UPDATE  <表名>SET  <列名>=<表达式>[,<列名>=<表达式>]…[WHERE <条件>];

删除数据

DELETEFROM   <表名>[WHERE <条件>];
视图 

建立视图

CREATE  VIEW <视图名>  [(<列名>  [,<列名>]…)]AS  <子查询>[WITH  CHECK  OPTION];

删除 drop

4.数据库安全性

1. 用户标识与鉴别:使用口令

2. 存取控制:对权限进行限制

3. 自主存取控制,定义用户存取权限

GRANT语句的一般格式:授权指令
GRANT <权限>[,<权限>]... 
[ON <对象类型> <对象名>]
TO <用户>[,<用户>]...
[WITH GRANT OPTION];ALL PRIVILIGES 代表全部权限
public 代表所有用户
http://www.xdnf.cn/news/403057.html

相关文章:

  • 项目全栈实战-基于智能体、工作流、API模块化Docker集成的创业分析平台
  • 【漫话机器学习系列】254.假设空间(Hypothesis Space)
  • 批量重命名bat
  • 当 AI 邂逅丝路:揭秘「丝路智旅」,用 RAG 重塑中阿文化旅游体验
  • Axure 纵向滚动隐藏滚动条 Axure 滑动开关(属性开关)on-off
  • 数据结构-树(2)
  • DVWA在线靶场-xss部分
  • 【内网渗透】——S4u2扩展协议提权以及KDC欺骗提权
  • Nginx stream模块是连接级别的负载均衡
  • [计算机科学#14]:数据结构
  • 现代化水库运行管理矩阵平台如何建设?
  • DNS域名解析服务器的部署
  • 2025 年福建省职业院校技能大赛网络建设与运维赛项Linux赛题解析
  • 基于STM32、HAL库的CH342K USB转UART收发器 驱动程序设计
  • Spring Boot 注解详细解析:解锁高效开发的密钥
  • 中科院无人机导航物流配送的智能变革!LogisticsVLN:基于无人机视觉语言导航的低空终端配送系统
  • C++类与对象(二):六个默认构造函数(一)
  • 基于Qt6 + MuPDF在 Arm IMX6ULL运行的PDF浏览器——MuPDF Adapter文档
  • 《Python星球日记》 第64天:NLP 概述与文本预处理
  • 深度学习与机器学习模型全景解析:适用场景与最优实践指南
  • 【高并发架构设计】-1:高并发通用设计思想
  • LayerNorm vs RMSNorm 技术对比
  • [学习]RTKLib详解:ionex.c、options.c与preceph.c
  • 【PostgreSQL数据分析实战:从数据清洗到可视化全流程】金融风控分析案例-10.1 风险数据清洗与特征工程
  • Python语言在地球科学交叉领域中的应用——从数据可视化到常见数据分析方法的使用【实例操作】
  • Spring MVC 根据请求头 (如 Accept) 怎么返回 JSON 或 XML 数据?
  • 破解 Qt QProcess 在 Release 模式下的“卡死”之谜
  • 多模态大语言模型arxiv论文略读(七十一)
  • 基于Spring AI实现多轮对话系统架构设计
  • PHP 代理服务器:如何在 PHP 中设置代理