初探mysql数据库模式(一)

数据库模式是什么?     

数据库模式是描述整个数据库的数据结构和数据库底层架构的事务。它分为逻辑模式(俗称:“模式”),外模式(俗称:“子模式”or“用户模式”),内模式(俗称:“存储模式”)。逻辑模式是描述数据库中全体数据的逻辑结构和特征、外模式是描述数据库用户能够看见和使用的局部数据的逻辑结构和特征、内模式描述了数据的物理结构和存储方式,是数据在数据库内部的表示方式。

数据库关系模式是什么?    

 它所指待的是对每个表或者是字段之间存在关系的描述。譬如一个数据表class里面有三个字段,姓名name,年龄age,性别gender(PS:Sex带有不文雅的意思所以不建议使用)。那么我们可以得出如下的关系模式:class_schema=(name,age,gender);这只是一个简单的关系,如果是多个表联系,那么关系模式是有很多个的。关系模式形式化表示为:R(U,D,dom,F)R是关系模式的名字,U指属性名集合,D指属性集合U的域(范围),dom指属性向域的映象集合,F指属性间数据依赖关系集合;通常可以简写为R(U)或R(A1,A2,…,An);

码,码,码?

码相当与身份识别器,而码又分为很多种:超码,主码,外码,候选码。超码是一个或者是多个属性的集合,而这个组成的超码集合可以唯一的标识出某条数据(元组)。譬如本人的身份证号码可以是一个超码,可以确认你的信息。而你的身份证加姓名也可以组成一个超码;同样可以确认你的信息。但是你的名字是不能做为超码的,有很多同名的。例如我的名字廖君,而还有一个女歌手也叫廖君;

候选码:上面那个例子中,假如就两个人。假如不考虑身份证,那么我们要区分还可以用性别(我是男的).那么这个性别就在这里可以当作候选码。(这只是一个比如)

外码:外码就是另外一个关系模式的主码。譬如我们学校有两个叫廖君(还真有一个老师,一个就是我)。但是我们需要区分开来谁是老师,谁是学生。那么我就需要一个表来记录,数字1是老师,0是学生。现在在我的数据里面添加一条身份代码:0,那么这个身份代码就是一个外码。

主码很简单,相当与你本人的身份证号码。(正常身份证)不需要其他额外的标识符就可以确认你的信息;




转载于:https://my.oschina.net/websec/blog/159899

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

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

相关文章

Kubernetes:标签、选择器、注解、容忍度、亲和性

在前面的学习中,我们学到了 Deployment 部署,以及副本数(ReplicaSet),但是 Pod 部署到哪个 Worker 节点是随机的,即使有 3个 Woker 和 3个 Pod 副本,不一定每个 Node 刚刚好运行一个 Pod,也可能其中一个 No…

数学界最恐怖的存在!54张图读懂2600年数学史,看完跪下了......

全世界只有3.14 % 的人关注了爆炸吧知识“中国现代数学之父”华罗庚曾说过宇宙之大,粒子之微火箭之速,化工之巧地球之变,生物之谜日用之繁,无处不用数学回首往昔数学始终伴随我们左右纵横交错的几何、繁琐复杂的运算难以求解的方程…

R中大数据量数据框的合并慎重使用rbind

最近在用R处理百万级的数据,程序本身是线性扫描,可是随着数据量的增加,运行时间却不是线性增加,一度几天都运行不完。 怀疑是其中rbind函数造成的,查询到这篇文章,也说了这个问题 http://blog.sina.com.cn/…

realloc函数使用总结

realloc原型是extern void *realloc(void *mem_address, unsigned int newsize); 函数说明 语法 指针名=(数据类型*)realloc(要改变内存大小的指针名,新的大小)。 新的大小可大可小(但是要注意,如果新的大小小于原内存大小,可能会导致数据丢失,慎用!) 头文件 #incl…

const constexpr C++ 解释

中的const可用于修饰变量、函数,且在不同的地方有着不同的含义,现总结如下。 const的语义 C中的const的目的是通过编译器来保证对象的常量性,强制编译器将所有可能违背const对象的常量性的操作都视为error。 对象的常量性可以分为两种&#x…

python顺序结构实验设计_Python程序设计实验报告二:顺序结构程序设计

安徽工程大学 Python程序设计实验报告 班级 物流192 姓名 周立 学号 3190505227成绩 日期 3月4日 指导老师修宇 实验二 顺序结构程序设计(验证性实验) 【实验目的】 (1)掌握数据的输入输出的方法; (2&#…

寒窗苦读十多年,我的毕业论文只研究了一个「屁」

全世界只有3.14 % 的人关注了爆炸吧知识放屁,是公共场合里的社交忌讳。在人头济济的电梯和地铁车厢里,一个呼之欲出的屁,对任何人来说,都是一场心理与生理之间的拉锯战。如果选择放屁,虽然疏通了肠道,但却拉…

Rust 能否替代 C 语言,主宰 Linux 的世界?

最近看到一个程序员工资排行的图,435501份数据,调查显示:Rust 是最赚钱的!随着 Rust 的发展和表现出的优点,它吸引了越来越多的程序员关注。首先,Rust 没有历史包袱,集表达力、高性能、内存安全…

linux jdk环境变量配置

2019独角兽企业重金招聘Python工程师标准>>> 1.官网下载jdk tar包2.移动安装包到/usr/local 目录下,tar zxvf命令进行解压 感觉jdk的名字太难记就改成java了:mv (jdk~~~) java 3.设置环境变量如果是针对单个用户的环境变量控制,可修改~/.bas…

程序员求职之道(《程序员面试笔试宝典》)之学业与求职,孰轻孰重?

人生总会遇到一些选择,要用智慧和胆魄做决定。 ——《全城高考》 求职往往需要花费巨大的时间与精力去准备与应付,而毕业季正好与求职季交叉,导师布置的任务、毕业设计的压力又会无形之中会消磨掉求职者的时间与精力,当二者出现冲…

堆排序图片详解

堆排序实例 首先,建立初始的堆结构如图: 然后,交换堆顶的元素和最后一个元素,此时最后一个位置作为有序区(有序区显示为黄色),然后进行其他无序区的堆调整,重新得到大顶堆后&#x…

Java工程转换为Maven工程-b

1. 前言 在开发中经常要建立一个Maven的子工程,对于没有模板的同学来说从Java工程来转换也是一个不错的选择。本文就如何从一个Java工程创建一个Maven工程做了一个介绍,相信对于将一个Java工程转换为Maven工程的工作也是有帮助的。 2. 创建Java工程。 创…

bat从数组中找出相同数字并删除_找到所有数组中消失的数字

题目描述给定一个范围在 1 ≤ a[i] ≤ n ( n 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次。找到所有在 [1, n] 范围之间没有出现在数组中的数字。您能在不使用额外空间且时间复杂度为O(n)的情况下完成这个任务吗? 你可以假定…

在IE11下设置SharePoint Server 2013却遇到“需要 Internet Explorer 才能使用此功能。”的解决办法...

就在昨天顺利升级到Windows 8.1 随之IE也升级到了IE11,但是当打开IE11设置SharePoint Server 2013的时候遇到了一些小情况: Figure 1使用Windows 8.1中的IE11设置SharePoint 2013 的时候遇到这样乌龙的事情 这个情况的原因是什么呢? 通常情况…

堆的构建、堆的插入、堆的删除、堆排序

如果你不了解堆是如何构建、插入、删除、堆排序的原理,可以点击下面连接,有详细的图解,让你知道逻辑原理。 http://blog.csdn.net/u011068702/article/details/52712634 最详细的最小堆构建、插入、删除的过程图解 http://blog.csdn.net/u011068702/article/details/…

2分钟,我把网站性能优化了3倍!

大家好,我是鱼皮,最近有同学反映我做的 面试刷题网站 (mianshiya.com)页面加载速度有点慢,所以我决定先简单优化一下。其实我只做了 1 件小事,花了两分钟左右,就把网站的加载速度从 5 秒左右优化…

PHP: 深入了解一致性哈希

2019独角兽企业重金招聘Python工程师标准>>> 学习网址如下所示: http://www.frostsky.com/2014/03/php-consistenthash/ http://www.cnblogs.com/jackluo/archive/2013/06/27/3158847.html http://blog.csdn.net/cywosp/article/details/23397179/ 转载于:https://m…

开机黑屏 仅仅显示鼠标 电脑黑屏 仅仅有鼠标 移动 [已成功解决]

转自:http://blog.sina.com.cn/hyiyun 近些天,有网友的电脑出现:开机后屏幕一片漆黑,但屏幕中央显示有鼠标指针,并且可移动。按键盘上的不论什么键都没有反应,鼠标也仅可移动,单、双击都无效。说…

java23种设计模式个人整理_java23种设计模式-行为型模式之模板方法模式

定义:Define the skeleton of an algorithm in an operation,deferring some steps to subclasses.Template Method lets subclasses redefine certain steps of an algorithm without changing the algorithms structure.定义一个操作中的算法的框架,而…