数据库系统概念学习1

第一章  引言

数据库管理系统是由一个互相关联的数据的集合和一组用以访问这些数据的程序组成。这个数据集合通常称为数据库

特定时刻存储在数据库中的信息的集合称为数据库的一个实例,而数据库的总体设计称为数据库模式

数据库结构的基础是数据模型,数据模型是一个描述数据,数据联系,数据语义以及一致性约束概念工具的集合。数据模型提供了一种物理层,逻辑层以及视图层数据库设计的方式

存储在数据库中的数据值必须满足某些一致性约束

数据库中实体通过属性集合来描述,例如name,salary可以描述instructor实体

联系是几个实体之间的关联,例如,member联系将一位教师和她所在的系关联在一起。同一类型的所有实体的集合称为实体集,同一类型的所有联系的集合称为联系集

 第一部分--关系数据库

第二章--关系模型介绍

元组只是一组值的序列(或列表),在n个值之间的一种联系可以在数学上用关于这些值的一个n元组来表示,换言之,n元组就是一个有n个值的元组,它对应于表中的一行

在关系模型的术语中,关系用来指代表,元组用来代指行,属性指代表中的列

对于关系的每个属性,都存在一个允许取值的集合,称为该属性的

域是原子的,不可再分的

空值是一个特殊的值,表示值未知或不存在

数据库模式

数据库模式是数据库的逻辑设计,数据库实例是给定时刻数据库中数据的一个快照

一个元组的属性值必须是能够唯一区分元组的,换句话说,一个关系中没有两个元组在所有属性上的取值都相同

超码是一个或多个属性的集合,这些属性的组合可以是我们在一个关系中唯一的标识一个元组

主码主要用来在一个关系中区分不同元组的候选码

外码:

模式图

一个含有主码和外码依赖的数据库模式可以用模式图

关系查询语言

查询语言是用户用来从数据库中请求获取信息的语言

过程化语言中,用户执导系统对数据库执行一系列操作以计算出所需结果

非过程化语言中,用户只需要描述所需信息,而不用给出获取该信息的具体过程

关系运算

第三章--SQL

SQL数据定义

基本属性

基本模式定义

create table

create table r

( A1,D1,

A2,D2,

 ....,

An,Dn,

<完整性约束1>,

...,

<完整性约束k> );

完整性约束:

not null:一个属性上的not null 约束表明在该属性上不允许空值,此约束把空值排除在该属性域之外

SQl 禁止破坏完整性约束的任何数据库更新

insert

insert into instructor

       values (10211,'Smith' , 'Biology' , 66000);

delete  删除元组

delete from  student;

drop 去掉关系

drop table r;

此命令从数据库中删除关于被去掉关系的所有信息,delete 保留关系r,但删除r中所有的元组。drop 不仅删除 r 的所有元组,还删除 r 的模式,一旦 r 被去掉,除非用 create table 命令重建 r ,否则没有元组可以插入 r 中

alter table 增加属性

alter table r add A,D;

关系中的所有元组在新属性上的取值被设为 null,r 为现有关系的名字,A是待添加属性的名字,D 是待添加属性的域

alter table  r drop A;

从关系中去掉属性,其中 r 是现有关系的名字,A 是关系的一个属性的名字

SQL 查询的基本结构

SQL 查询的基本结构由三个子句构成:select,from,where

单关系查询

强行删除重复 可以在 select 后加上关键字 distinct

select distinct dept_name

from instructor;

SQL 允许我们使用关键字 all 来显式指明不去除重复

select 子句还可带含有 +,-,*,/ 运算符的算术表达式,运算对象可以是常数或元组的属性

where:

多关系查询

通过 from 子句定义了一个在该子句中所列出关系的笛卡尔积,它可以用集合理论来形式化地定义,但最好通过下面的迭代过程来理解:

此结果关系具有来自 form 子句中所有关系的所有属性

自然连接

自然选择运算作用于两个关系,并产生一个关系作为结果,自然连接只考虑那些在两个关系模式中都出现的属性上取值相同的元组对。

附加的基本运算

更名运算

as 子句 

old-name  as new-name

as 子句既可以出现在 select 子句中,也可以出现在 from 子句中

字符串运算

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/130823.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C++基础】左值引用、右值引用、move、forward

本文参考&#xff1a;右值引用 | 爱编程的大丙 转移和完美转发 | 爱编程的大丙 左值、右值、左值引用、右值引用 左值 是指存储在内存中、有明确存储地址&#xff08;可取地址&#xff09;的数据&#xff1b; 右值 是指可以提供数据值的数据&#xff08;不可取地址&#x…

UNext:基于 MLP 的快速医学图像分割网络

UNext 会议分析摘要贡献方法整体框架1.Shifted MLP2.Tokenized MLP Stage 实验1.对比实验2.消融实验2.1 模块的消融实验2.2 通道数的探索 可借鉴参考 会议分析 期刊&#xff08;会议&#xff09;名&#xff1a; MICCAI 2022 会议信息&#xff1a; 属于顶会了 有代码&#xff1…

3D视觉测量:3D空间圆拟合优化

文章目录 0. 测试效果1. 测量思路2. 部分调用代码文章目录:形位公差测量关键内容:通过视觉方法实现GD&T中的圆孔位置定位0. 测试效果 1. 测量思路 空间圆拟合是指在三维空间中找到最佳拟合圆的过程。这通常用于从一组三维点数据中找到一个圆,以最小化数据点到圆的距离之…

百度地图3D棱柱鼠标事件

百度地图2D API JavaScript API | 百度地图API SDK 百度地图3D API jspopularGL | 百度地图API SDK 3D棱柱效果如下 一. 渲染地图 var map new BMapGL.Map(container, {style: {styleJson: styleJson2} }) map.centerAndZoom(new BMapGL.Point(116.404, 39.925), 9); map…

通过rabbitmq生成延时消息,并生成rabbitmq镜像

通过rabbitmq生成延时消息队列&#xff0c;并生成rabbitmq镜像 整体描述1. 使用场景2. 目前问题3. 前期准备 具体步骤1. 拉取镜像2. 运行镜像3. 安装插件4. 代码支持4.1 config文件4.2 消费监听4.2 消息生产 5. 功能测试 镜像操作1. 镜像制作2. 镜像导入 总结 整体描述 1. 使用…

2023年中国光伏行业研究报告

第一章 行业概况 1.1 定义 光伏行业&#xff0c;也称为太阳能光伏行业&#xff0c;是一个专注于利用光伏技术将太阳能转化为电能的领域。该行业涵盖了太阳能电池的制造、光伏系统的设计、安装和维护&#xff0c;以及电能的销售和供应。光伏技术的核心是光伏效应&#xff0c;通…

java设计模式之观察者模式

. 基本概念 观察者&#xff08;Observer&#xff09;模式中包含两种对象&#xff0c;分别是目标对象和观察者对象。在目标对象和观察者对象间存在着一种一对多的对应关系&#xff0c;当这个目标对象的状态发生变化时&#xff0c;所有依赖于它的观察者对象都会得到通知并执行它…

图片怎么压缩大小?这样压缩图片很简单

在日常生活中&#xff0c;我们常常需要处理各种各样的图片文件&#xff0c;但有时候图片的大小可能会成为问题。比如在上传图片到网站或者将图片发送给朋友时&#xff0c;过大的图片可能会导致上传速度变慢或者占用过多内存。这时&#xff0c;我们就需要用到图片压缩了&#xf…

python 语法入门

文章目录 前言python 语法入门1. 语句分隔符2. 注释3. pep8规范4. 变量5. 扩展5.1. 运行此行代码的过程 前言 如果您觉得有用的话&#xff0c;记得给博主点个赞&#xff0c;评论&#xff0c;收藏一键三连啊&#xff0c;写作不易啊^ _ ^。   而且听说点赞的人每天的运气都不会…

SegGPT: Segmenting Everything In Context论文笔记

论文https://arxiv.org/pdf/2304.03284.pdfCodehttps://github.com/baaivision/Painter 文章目录 1. 背景2. Motivation3. Method3.1 In-Context Coloring3.2 Context Ensemble3.3 In-Context Tuning 1. 背景 在Painter中&#xff0c;将各种密集预测任务视为一种着色问题。 在…

类和对象(1)

文章目录 1.面向过程和面向对象初步认识2.类的引入3.类的定义4.类的访问限定符和封装4.1访问限定符4.2封装 5.类的作用域6.类的实例化6.2结构体内存对齐规则 7.this指针7.2this指针的特性 封装&#xff08;补充&#xff09; 1.面向过程和面向对象初步认识 C面向对象但不纯面向…

【Python】爬虫基础

爬虫是一种模拟浏览器实现&#xff0c;用以抓取网站信息的程序或者脚本。常见的爬虫有三大类&#xff1a; 通用式爬虫&#xff1a;通用式爬虫用以爬取一整个网页的信息。 聚焦式爬虫&#xff1a;聚焦式爬虫可以在通用式爬虫爬取到的一整个网页的信息基础上只选取一部分所需的…

关于运行franka_ros包中的franka_gazebo报错VMware: vmw_ioctl_command error 无效的参数.

参考的博文&#xff0c;感谢&#xff0c;解决Vmware下虚拟机下打开gazebo报错 &#xff0c;VMware: vmw_ioctl_command error 无效的参数. 首先第一个VMware: vmw_ioctl_command error 无效的参数的问题。这应该是虚拟机的bug&#xff0c;毕竟使用虚拟机和真实的物理机上是有差…

Error from server (NotFound): pods “nginx-57d84f57dc-b866m“ not found

原因&#xff1a;机房断电&#xff0c;导致服务重启 [rootmaster1 logs]# kubectl get pod NAME READY STATUS RESTARTS AGE nginx-57d84f57dc-57fkf 1/1 Running 0 75s [rootmaster1 logs]# kubectl logs -f nginx-5…

CPU-主存储器-副存储器-RAM-ROM-内存-运存-外存-硬盘-闪存-GPU-显存——关于这一系列概念的理解

文章目录 概念梳理CPU主存储器/内存/RAM/运存ROM副存储器/外存硬盘&#xff08;电脑&#xff09;、闪存&#xff08;手机&#xff09;GPU显存 可参考的手机内部结构示意图 做计算机组成原理上的题的时候&#xff0c;发觉自己对RAM和ROM的概念理解有所缺失&#xff0c;在看完一些…

QT Pyside2 Designer 的基本使用

文章目录 前言PySide2PySide2 Designer 一、安装PySide2、PyQt5二、使用designer.exe2.1 工具的大致介绍2.2 创建一个新的UI2.3 UI文件另存为/保存(CtrlS)2.4 使用python操作UI文件 总结 前言 PySide2 QT PySide2 是一个用于 Python 编程语言的开源框架&#xff0c;它提供了与…

Faster Rcnn

一、公用特征Feature Maps的获取 二、Region Proposal Network Feature Maps[bs,1024,38,38]经过3*3卷积&#xff0c;然后分别经过两个1*1的卷积&#xff0c;通道数分别为18&#xff0c;36 18 9*2 代表每个位置9个先验框为背景和目标的概率 36 9*4 代表每个位置9个先验框的…

pinduoduo(商品详情)API接口

为了进行电商平台 的API开发&#xff0c;首先我们需要做下面几件事情。 1&#xff09;开发者注册一个账号 2&#xff09;然后为每个pinduoduo应用注册一个应用程序键&#xff08;App Key) 。 3&#xff09;下载pinduoduo API的SDK并掌握基本的API基础知识和调用 4&#xff…

【Terraform】Terraform自动创建云服务器脚本

Terraform 是由 HashiCorp 创建的开源“基础架构即代码”工具 &#xff08;IaC&#xff09; 使用HCL&#xff08;配置语言&#xff09;描述云平台基础设施&#xff08;这里教你使用低级基础设施&#xff1a;交换机、云服务器、VPC、带宽&#xff09; Terraform提供者&#xf…

数据结构和算法(5):二叉树

树 向量允许通过下标或秩&#xff0c;在常数的时间内找到目标对象&#xff1b;然而&#xff0c;一旦需要对这类结构进行修改&#xff0c;那么无论是插入还是删除&#xff0c;都需要耗费线性的时间。 列表允许借助引用或位置对象&#xff0c;在常数的时间内插入或删除元素&…