Mysql 汇总

关系型数据库

  • mysql: 广泛

  • oracle:大型软件公司,面向政府、银行

  • sqlserver:大型工厂、ERP(企业资源管理)

  • sqlite: 手机端、安卓

  • db2

  • 达梦数据库

  • 人大金仓

  • 创建的数据库


    image.png

数据库起名规则 公司名缩写业务名缩写用途(dev:开发 、test: 测试、prod: 生产)

  • 数据库语句
    show databases; # 显示数据库
    use 数据库名; # 切换数据库
    create database 数据库名; # 创建数据库
    drop database 数据库名; # 删除数据库

  • 数据库中包含数据表(Table)

系统表(sys_业务名:sys_user)、业务表( bs_goods 或者 shop_goods)

  • 数据表的字段
    • 整数类型:int、tinyint 、 smallint、bigint
    • 浮点型:decimal(指定保留几位)、float、double
    • 字符串类型 char(6): 字符定长为6 一般使用 char(1) 例如性别
      varchar 可变长度
      text 超大文本存储
    • 时间: date、datetime、timestramp(时间戳)
  • 约束
    • 主键约束:primary key (列名1,列名2)一张表通常情况下需要主键约束,值不允许重复
    • 外键约束: foreign key(列名) 和不同的表之间的列做关联,删除/修改的时候产生连锁反应
    • not null: 列中的数据不能为空
    • unique key: 唯一约束,null 允许存在
    • auto increment:自动递增,做主键使用,其他列不适用
    • default: 默认值
  • 创建表的语句

create table 表名(
列名1 类型 [not null][auto increment] [default 与类型对应的数据]
,列名2 类型 [not null] [default 与类型对应的数据]
....
primary key (列名1,[列2])
)

范式、

第一范式

基于列的原子性,列不能再被拆分成其他列(不考虑主键)

联系人表(姓名、性别、电话) 不符合第一范式

改造后

联系人表(姓名、性别、手机号码、固定电话、公司座机) 符合一范式

第二范式
  • 是一个1NF
  • 必须有主键
  • 非主键列完全依赖于主键

订单表
ID、订单号、商品ID、商品名称、商品数量、商品价格、省、市、县/区、详细地址 不符合二范式

改造后

订单表
ID、订单号、商品ID、商品数量、省、市、县/区、详细地址
商品表
商品ID、商品名称、商品价格
符合二范式

第三范式
  • 是一个2NF
  • 非主键列A 不能依赖于非主键列B

订单表
ID、订单号、商品ID、商品名称、商品数量、商品价格、联系人姓名、联系人手机号、省、市、县/区、详细地址 符合二范式,不符合三范式(省、市、县/区、详细地址 四列和 联系人姓名列有隐含的列传递关系)

改造后

订单表
ID、订单号、商品ID、商品数量、联系人ID
商品表
商品ID、商品名称、商品价格
联系人表
ID,姓名、性别、手机号码、省、市、县/区、详细地址

# 举例: 学生表、课程表、成绩表
学生表:ID、姓名、学号、身份证号
课程表:ID、课程名称、上课时间、第几节课
成绩表:学生ID、课程ID、平时成绩、考试成绩

表之间的关系

  • 一对一 (学生表和学生详情信息表、用户表和实名认证表)
  • 一对多 或 多对一(用户表和订单表、学生表和成绩表)
  • 多对多 (订单表和商品表、课程表和成绩表)

事务四大特性 ACID

  • 原子性 A 全部成功(提交)或全部失效(回滚)
  • 一致性 C 数据在提交之前的状态 不因为中途的特殊情况导致的中断而改变
  • 隔离性 I 不同的事务间拿到的数据相互隔离,不直接影响
  • 持久性 D 事务提交成功后,数据永久保存

数据脏读

索引

提升数据量大的时候查询效率

  • 主键索引
  • B+普通索引
  • 唯一索引

B+索引结构只保存地址指向,不保存具体值,有别于树

二分查找
image.png
B+树
image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,558评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,002评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,036评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,024评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,144评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,255评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,295评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,068评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,478评论 1 305
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,789评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,965评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,649评论 4 336
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,267评论 3 318
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,982评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,223评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,800评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,847评论 2 351

推荐阅读更多精彩内容

  • 声明:本文大多数借鉴于网络,如有雷同,望见谅!!!一:MySql逻辑架构 二:MySql逻辑架构-连接层 当MyS...
    拂清风阅读 493评论 0 0
  • 一、MySQL通过命令行操作 1. 开启数据库服务 可以通过 DOS 命令启动 MySQL 服务,点击“开始”菜单...
    知向谁边阅读 305评论 0 1
  • 启动:net start mysql关闭:net stop mysql登录账户: mysql –uroot –p ...
    feitry阅读 653评论 0 1
  • 简单说一下数据库的三范式? 第一范式:数据库表的每一个字段都是不可分割的 第二范式:数据库表中的非主属性只依赖于主...
    美雨知春阅读 126评论 0 1
  • mysql命令行命令和SQL语句,MySQL修改删除增加字段类型,字段数据等。。 一 . 常用mysql命令行命令...
    夜空最亮的9星阅读 393评论 0 1