MySQL基本概念和正确发音(表、列、行、注解等讲解)

举报
李子捌 发表于 2021/11/07 20:46:53 2021/11/07
【摘要】 本专栏会持续输出MySQL系列文章,祝大家每天进步亿点点!文末私信作者,我们一起去大厂。 本篇总结的是 《MySQL基本概念》,后续会每日更新~关于《Redis入门到精通》、《并发编程》、《Java全面入门》、《鸿蒙开发》等知识点可以参考我的往期博客相信自己,越活越坚强,活着就该逢山开路,遇水架桥!生活,你给我压力,我还你奇迹! 1、什么是数据库维基百科关于数据库的定义:In computi...
  • 本专栏会持续输出MySQL系列文章,祝大家每天进步亿点点!文末私信作者,我们一起去大厂
  • 本篇总结的是 《MySQL基本概念》,后续会每日更新~
  • 关于《Redis入门到精通》、《并发编程》、《Java全面入门》、《鸿蒙开发》等知识点可以参考我的往期博客
  • 相信自己,越活越坚强,活着就该逢山开路,遇水架桥!生活,你给我压力,我还你奇迹!


1、什么是数据库

维基百科关于数据库的定义:

In computing, a database is an organized collection of data stored and accessed electronically from a computer system. Where databases are more complex they are often developed using formal design and modeling techniques.

翻译成中文的意思就是:在计算中,数据库是从计算机系统以电子方式存储和访问的有组织的数据集合。在电脑中,我们可以将数据库理解成“文件柜”,需要存储的数据以某种方式进行组织,并存放在“文件柜”中。


DB和DBMS区别:

很多人会把DB和DBMS搞混淆,其实两者是两个东西。DB(database)指的是数据库容器;DBMS(database management system)指的是数据库管理系统。两者之间的关系是,数据库DB是通过数据库管理系统DBMS创建和操纵的容器。在实际使用中,我们并不直接访问数据库,而是使用DBMS来访问数据库。



2、MySQL数据库重要概念


2.1 表

表(table):指的是某种特定类型数据的结构化清单。

上述概念中有两个重要的知识点:

  • 特定类型 -> 指一种类型比如用户信息、订单信息、商品信息,表设计不允许杂糅各种数据类型
  • 结构化清单 -> 指表数据按照用户需求进行结构化拆分和组织的数据,比如用户信息拆分为用户名、性别、年龄等结构化数据


表在同一个数据库中不允许同名,不同数据库中允许同名


可以通过show tables查看数据库中的表

user表的结构化清单

2.2 列

列(column):表中的一个字段,一个表有一个或多个列组成。

在上述用户信息表中,拥有用户名列、性别列、年龄列等,这些列共同组成了用户表。

MySQL数据库中列都有其对应的数据类型。数据类型(datatype)会约束列所能存放的数据。比如可以防止在数值类型的字段中录入字符类型数据。


可以通过show full columns from 表名 查看表的具体列信息


2.3 行

行(row):表中的一条记录。

MySQL数据库中的数据以行的形式存储,每一条数据都是一行(也可以称之为记录),但是正确的没有歧义的说法是行(hang)。

2.4 主键

主键(primary key):一列或几个列,其值或组合值能够唯一区分表中的每个行。

主键就好比人的身份证号,它不会重复,可以用于标记认得身份。值得注意的是,主键可以是多个列共同组成。

也可以通过DDL查看,主键用PRIMARY KEY标识

CREATE TABLE `user` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `name` varchar(255) NOT NULL COMMENT '姓名',
  `age` int(11) NOT NULL COMMENT '年龄',
  `sex` smallint(1) DEFAULT NULL COMMENT '性别',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;


定义主键需要满足两个条件:

  1. 主键列数据不重复
  2. 主键列数据不为空(null)

只要满足这两个条件,列就可以作为主键。建议表设计时,一定要定义主键,拥有主键能够方便数据查询、删除、更新等操作,否则相对比较麻烦。


定义主键满足的两个规范:

  1. 主键值不应该更新
  2. 主键值不应该具有业务意义、也就是说除了标志作用,不应该用于其他业务使用



3、SQL应该怎么读

SQL是Strucctured Query Language的缩写,在读的时候我们可以拆开读S—— Q——L,大部分情况下我们是组合起来读的,应该读作sequel / [ˈsiːkwəl] .

此链接在线朗读

👇🏻 关注公众号 获取更多资料👇🏻

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。