MySQL基础入门

MySQL入门

1.1. 数据库

最近想为找工作做几个项目实战演练一下,其中一个是基于SpringBoot搭建一个头条咨询网站。项目中用到了MySQL数据库,最近学习了一下基础知识(非科班出身有太多的课要补。。。)。

数据库主要分为两种,一种是关系型数据库,另一种是非关系型数据库。虽说现在非关系型数据库发展很快,但是关系型数据库的地位依旧不可动摇,并逐渐发展成为关系型数据为主,非关系型数据为辅的局面,所以学好关系型数据库是非常重要的。MySQL是最常用的关系型数据库之一,其定义了一个数据库管理系统(DBMS),其基本的操作语言是SQL(结构化查询语言,Structural Query Language),无论什么数据库,其操作语言基本都是基于SQL的。

1.2.关系模型

数据库中的基本构成是表,任何一个数据库都是基于关系模型的,比如:一对多、多对多、一对一关系。

数据库中可以存在多张表,每张表之间的关系来源于上述关系模型。

每一张表的组成类似于Excel表格,由行和列组成,每一列代表一个字段,这些字段是根据业务需求来具体设定的。在项目的数据库设计中,业务字段设计是第一步也是非常关键的一步,需要合理地将业务需求合理地转化为数据库中的业务字段,同时构造合适的关系模型。每一行代表一条记录(record),由不同的字段的内容组成。

1.3.主键和外键

主键是用来唯一确定表中每行记录的字段,通常主键不能采用有业务属性的字段,比如人的年龄之类的。比如在学校可以使用学号最为每一个学生的唯一识别,可以在数据库中将“student_id”设置为主键。

外键是用来构建一对多(或多对一)的关系,比如一个班级中可以有多个学生,那个班级表和学生表可以构成一对多的关系,那么可以使用班级的ID作为外键,来对学生表中的班级信息进行约束。但是使用外键会降低性能,一般使用程序的逻辑来实现外键的功能。

1.4.CRUD操作

CRUD(create、retrieve、update、delete)就是我们常说的增删改查,在SQL语言中,增删改查分别对应的是:

①INSERT INTO <表名> (字段1, 字段2, …) VALUES (值1, 值2, …);

②DELETE FROM <表名> WHERE …;

③UPDATE <表名> SET 字段1=值1, 字段2=值2, … WHERE …;

④SELECT (字段1,字段2,…) FROM <表名> WHERE <条件表达式>

基本的SQL语法可以参阅廖雪峰的官方网站:https://www.liaoxuefeng.com/wiki/1177760294764384

这里仅给出几个要点和常用的语法:

①使用SELECT 1来测试数据库是否正常连接;

②查询是SQL语言最常用的操作,关于查询有很多常见的操作,比如:

​ 排序:order by (字段) DESC(默认是增序);

​ 分页查询:SELECT id, name, gender, score FROM students ORDER BY score DESC LIMIT 3 OFFSET 0;

​ 聚合查询:SELECT count(字段)FROM <表名>

全部评论

相关推荐

03-26 13:04
已编辑
电子科技大学 算法工程师
xiaowl:你这个简历“条目上”都比较有深度性,但是实际上面试官又没法很好的评估你是怎么达到很多看上去很厉害的结果的。要避免一些看上去很厉害的包装,比如高效的内存复用策略的表达,如果仅是简单的一些内存共享机制,而且面试上也没有深挖的空间,就不要这样表达。比如,工程化模式本质上可能就是定义了一些abstract class,那也就没特别多值得讲的内容。建议简历上应该侧重那些你花了大量时间和精力解决、研究的问题,不要过分追求“丰富”,而是关注在技术深入度、问题解决能力的表现上。
没有实习经历,还有机会进...
点赞 评论 收藏
分享
996的工作制还是没能硬啃下去,快要面试怂了,取消了
牛客80700350...:很正常,不是所有人都能接受这种强度的。不叫怯战,这叫明智
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务