MySQL基础知识

MySQL数据库基础知识

MySQL自带4个数据库

information_schema:存储表信息,列信息等等,用户信息,简单理解为数据目录信息, 元数据

mysql:mysql数据库的核心数据库

performance_schema:数据库性能相关的信息

sys:数据都来自performance_schema,给DBA人员看更加方便


基础操作语句

查看所有的数据库    show databases;

创建数据库    create database 数据库名;

删除数据库    drop database 数据库名;

使用数据库    use 数据库名;

查看当前使用的数据库:    select database();        ·默认没有使用数据库,显示null

退出mysql:    exit 或者 quit

开发时,选择utf8编码,mysql配置就是utf8

查看编码相关信息:    show variables like '%character%';


创建表基本语法:

create table 表名(

    列1 类型 [约束],

    列2 类型 [约束],

    ...

    列n 类型 [约束]

);

表的命名:

组成:

mysql:字母,_,数字          oracle:字母,_,$,#,数字

长度不能超过32个字母

一般都是小写,多个单词之间用_分隔

建议:系统关系字大写, 大小写都不会报错

不能使用系统关键字


数据类型:

数值型

整型:

tinyint(1字节),smallint(2字节),mediumint(3字节),int(4字节),bigint(8字节)

主要使用int

小数:

浮点型:存储的是近似值

float(4字节):

double(8字节):

eg: float(10,2):根据需要制定有效位数是10,小数位2位

定点型:

decimal:精确存储,内部用字符串来存储的

eg:decimal(10,3): 有效位10位,小数位3位,实际占用空间有效位+2

文本型

char:定长的文本型

eg: name char(20):开辟20个字节,如果没有存储满,用空格填满

varchar:变成的文本型

eg: name varchar(20):最多可以存储20个字节,实际开辟空间由内容大小决定

char效率更高,如果值的长度是固定的,可以选择char

varchar:节约空间,如果值的长度不一致,可以选择varchar,使用的比较多

日期型

date:存储年月日  2019-01-21

time:存储时分秒  22:48:30

year:存储年   2019

datetime:存储年月日时分秒 2019-01-21 22:48:30 1000~9999范围 重点

timestamp:存储年月日时分秒  1970~2038范围, 如果不指定值,值会取当前时间

大数据量类型:

blob:可以存储大数据量的字节数据

text:可以存储大数据量的文本数据

比如存储图形信息:可以选择blob,但是也可以把图片存储到本地,把图片路径存到数据库


查看当前数据库下有哪些表:    show tables;

查看某个表的结构:    desc 表名;

查看表的创建语句:    show create table 表名;    show create table 表名 \G 

删除表:    drop table 表名;

约束:

非空约束: not null            空:没有给值,任意的,未知的

唯一约束: unique             如果有值,不能重复        学号可以使用唯一约束

默认约束:default,  default 值        添加时,如果没有赋值,则取默认值

主键约束:primary key    保证行的唯一性

自动增长:auto_increment

适合主键,数值型,默认从1开始,每增加一行,值增加1

如果希望从n开始 create table 表名 (...) auto_increment=n;


导入脚本

source sql文件路径

source命令执行脚本,会按照从上到下的顺序依次执行


数据库设计三大范式:

设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,后面的范式基于前面范式,越高的范式数据库冗余越小。

目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)。

第一范式(1NF):

字段不可再分,比如:收货人地址拆分成    省,市,区....

                                   电话联系人    姓,  名

第二范式(2NF):

表中的字段不能部分依赖主键,只要不用联合主键, 只用一个列作为主键即可

通常,添加一个非业务字段作为主键

基于第一范式

第三范式(3NF):

表中的字段不能传递依赖

b字段依赖主键,  c字段依赖b ,这就是一种传递依赖

单独设计一张和b有关的表,c放到b对应的表中

减少字段的冗余.

基于第二范式


外键约束:foreign key

mysql中InnoDB引擎支持外键约束

当两个表有关系的时候,一个表的列a引用另外一个表(也可能当前表)的列b(主键列,唯一列)

可以给列a添加外键约束


被引用的表:父表,

引用的表:子表

被引用的列只能是主键列或唯一列

引用的列值只能取被引用列存在的值或空

on update 选择,on delete 选择:父表发生更新操作或者删除操作时,子表如何做

选择:

restrict:父表删除修改被引用列值时,如果子表有关联的数据,不能完成操作,报错,默认参数

cascade:级联删除或级联修改

set null:当父表数据删除或者修改时,对应子表数据置空

no action:在innoDB引擎下,和restrict效果一样

父表数据删除时,对应的外键值置null    修改时,级联修改

单独添加外键:表修改语句    

alter table 表名 add constraint foreign key(列名) references 被关联的表(被关联的列);

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

推荐阅读更多精彩内容