2018-07-24数据库基本认识

数据量的不断发展,增多,记录数据的方式也要有革新。
现在的人工智能,是让机器去学习大量的数据。
随着数据的量增大,就需要一种方式去存储和查找数据。
计算机中用数字化的存储方式,保存和查找都非常方便。
数据库:为了存储大量数据,和快速查找。
并且做成分布式(不仅存在一个硬盘中)


主要知识点

自学部分:要求印象中有这个东西,将来可以去查找

数据库特点:优化读写,能够在大量的数据中找到所需
MySQL是关系型数据库,基本设计模型为E-R关系模型。
90%工作量都在查询
大多数在乌班图中做。
人类对“0”的认知是非常不容易的

数据库简单介绍

  • 数据库系统解决的问题:持久化存储,优化读写,保证数据的有效性
  • 当前使用的数据库,主要分为两类
    1 文档型,如sqlite,就是一个文件,通过对文件的复制完成数据库的复制——手机、平板电脑等
    2 服务型,如mysql、postgre,数据存储在一个物理文件中,但是需要使用终端以tcp/ip协议连接,进行数据库的读写操作——可以执行命令

E-R模型

当前物理的数据库都是按照E-R模型进行设计的
E表示entry,实体
R表示relationship,关系
一个实体转换为数据库中的一个表
关系描述两个实体之间的对应规则,包括

  • 一对一
  • 一对多
  • 多对多

关系转换为数据库表中的一个列 *在关系型数据库中一行就是一个对象

关系同样也是一种数据,也需要被存储

数据关系类型

数据库设计的规范:(范式)
经过研究和对使用中问题的总结,对于设计数据库提出了一些规范,这些规范被称为范式

  • 第一范式(1NF):列不可拆分
  • 第二范式(2NF):唯一标识
  • 第三范式(3NF):引用主键
    说明:后一个范式,都是在前一个范式的基础上建立的

第一范式:列不可拆分,姓和名是两个信息,要考虑分开放还是一起放;是否可拆分基于当前想要实现的需求,够用就行。
第二范式:唯一标识,可以通过一个属性,唯一地找到这个数据。
第三范式:引用主键,引用关系的时候只能引用主键。

数据库完整性

*意思就是说要保证数据的正确

  • 一个数据库就是一个完整的业务单元,可以包含多张表,数据被存储在表中
  • 在表中为了更加准确的存储数据,保证数据的正确有效,可以在创建表的时候,为表添加一些强制性的验证,包括数据字段的类型、约束

字段类型

在mysql中包含的数据类型很多,这里主要列出来常用的几种
数字:int,decimal
字符串:char,varchar(有限),text(大文本,不确定有多少字符)
日期:datetime
布尔:bit

*decimal(5,2)一共包含5位数,小数包含两位。
*text比如添加某商品的信息,不确定有多少, 所以要用text
*char 和 varchar的区别,var变量可变的意思
*char(8)如果不够右侧补空格,varchar(8)如果不够报错或就变成了那几位的数据类型
比如:存“abcd”,char(8)是“abcd ”,varchar(8)就是“abcd”

*只要用到了字符,就要考虑编码问题,gb2312国标国内通用,utf-8国际通用标准(推荐使用)
*bit(8)存八个位,两种状态如车辆的进出,可以用bit的0和1来表示;多种状态也行,但是设计上比较复杂,000,001,010,011,100,101,110,可以控制多种状态。

约束

  • 主键primary key
  • 非空not null
  • 惟一unique
  • 默认default
  • 外键foreign key
    主键,决定了一种物理上的方式,唯一标识
    非空,not null
    唯一约束,这个值是不能重复的,重复则报错
    设置默认值,如男女
    外键约束

*一个实体对应一个“表”,一个属性对应一个“字段”
*一旦创建了表,最好不要删除或者新增栏位(改变表的结构工作量太大)
*如果删除一个字段,连同id一起删除,新增字段就新增了一个id

逻辑删除

  • 对于重要数据,并不希望物理删除,一旦删除,数据无法找回
  • 一般对于重要数据,会设置一个isDelete的列,类型为bit,表示逻辑删除
  • 大于大量增长的非重要数据,可以进行物理删除
    *数据的重要性,要根据实际开发决定
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,544评论 6 501
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,430评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,764评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,193评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,216评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,182评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,063评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,917评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,329评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,543评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,722评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,425评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,019评论 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,671评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,825评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,729评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,614评论 2 353

推荐阅读更多精彩内容

  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 31,928评论 2 89
  • 前面讲了SQL优化以及索引的使用、设计优化了,那么接下来就到表的设计与优化啦!!!真实地去设计优化单表结构以及讲述...
    JackFrost_fuzhu阅读 3,882评论 2 28
  • 文/Bruce.Liu1 1.建模简介 范式:英文名称是 Normal Form,它是英国人 E.F.Codd(埃...
    BruceLiu1阅读 5,592评论 0 9
  • 有个动听的词语叫做“折叠”,我折叠着我的爱,我的爱也折叠着我,我把我折叠着的爱在你的面前一点一点打开,然后...
    似鱼0208阅读 362评论 0 0
  • 体验: 约定 无论什么事情 如果想得到我们想要的结果 那一定要大家互生此事情的约定 依照约定执行 转换: 带领团队...
    美玉格格阅读 223评论 0 1