Mysql数据库的基础学习

为什么使用数据库?

1.持久化:将数据保存到可掉电式存储设备中以供使用。

数据库相关概念:

DB:数据库(Databass)
即存储数据的仓库,本质是一个文件系统,保存了一系列有组织的数据
DBMS:数据库管理系统(Database Management System)
是一种操纵和管理数据库的大型软件,用于建立,使用和维护数据库,对数据进行统一管理和控制。用户通过数据库管理系统访问数据库中表的数据
SQL:结构化查询语言(Structured Query Language)
专门用来与数据库通信的语言。

关系型数据库(RDBMS):

将复杂的数据结构归结为简单的二元关系(即二维表格的形式)

        rdbms以行(row)和列(column)的形式存储数据。一系列的行和列被称为表(table),一组表组成了库(database)

        表和表之间的数据记录是有关系。现实世界的各种实体以及实体之间的练习均用关系模型来表示。关系型数据库,就是建立在关系模型基础上的数据库。

        SQL就是关系型数据库的查询语言。

优势:

        1.复杂查询:可以用SQL语句方便的在一个表或者多个表之间做非常复杂的数据查询。

        2.事务支持:使得对于安全性能很高的数据访问要求得以实现。

非关系型数据库(非RDBMS):

可以看做传统关系型数据库的功能阉割版,基于键值对存储数据,不需要SQL层的解析,性能非常好!。减少不常用的功能,提高性能。

1.键值型数据库:

        Redis是最流行的数据库。通过key-Value来存储。Key作为唯一标志服,查找速度快。但无法像RDBMS使用条件过滤。不知道去哪找数据就需要遍历所有的键。典型使用场景为内存缓存。

2.文档型数据库

3.搜索引擎数据库

RDBMS:

ORM思想(Object Relational Mapping):
数据库中的一个表<---->Java或Python中的类

表中的一条数据(row)<---->类中的一个对象(或实体)

表中的一列<----->类中的一个字段,属性(field)

E-R(entity-relationship,实体-联系)模型中有三个主要概念:实体集,属性,联系集。

一个实体集对应数据库中的一个表,一个实体对应数据库表中的一行(row),称为一个一条记录(record)。一个属性(attribute)对应数据库表中的一列(column),也称为一个字段(field)。

1.表的关联关系

四种:一对一关联,一对多关联,多对多关联,自我引用。

1.1一对一关联

在实际开发中应用不多,因为一对一可以创建为一张表(但如果信息非常之多,那么就得优化就可以 创建一对一,一个表放常用,一个不常用。)

例:设计学生表:学号,姓名,手机号码,班级,系别,身份证,家庭住址,籍贯等等

        拆分为两个表格:

        基础信息表(常用信息):学号,姓名,手机号码,班级

        档案信息表(不常用信息):系别,身份证,家庭住址,籍贯等等

1.2一对多的关系

常用场景:客户表和订单表(一个客户多个订单) 分类表和商品表 部门表和员工表

1.3多对多的关系

表示多对多的关系就必须创建第三个表,该表通常为连接表,将多对多关系拆分为一对多的关系。将这两个表的主键都插入到第三个表中。

对DB,DBMS,SQL的理解?

DB:database,可以看做数据库的文件(类似.doc .txt等)

DBMS:数据库管理系统。(类似于word工具,wps工具)

MySQl数据库服务器中安装了MySQL DBMS使用MySQl DBMS来管理和操作DB,使用的是sql语言。

表和表的记录之间存在哪些关联关系?

ORM思想。

表和表的记录之间的关系:一对一关系,一对多关系,多对多关系,自关联

基本的SELECT语句

SELECT 字段1,字段2,... FROM 表名

SELECT 1 + 1,3 * 2;

SELECT * FROM 表名;//  * :表中的所有字段(或列) 

相关推荐

  1. 数据库MySQL基础】以MySQL为例数据库基础

    2024-05-12 17:32:03       13 阅读
  2. 数据库MySQL数据库基础

    2024-05-12 17:32:03       19 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-12 17:32:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-12 17:32:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-12 17:32:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-12 17:32:03       20 阅读

热门阅读

  1. vim 查找字符串的命令

    2024-05-12 17:32:03       12 阅读
  2. 关于XDC 约束固化flash流程

    2024-05-12 17:32:03       15 阅读
  3. 学习Uni-app开发小程序Day8

    2024-05-12 17:32:03       14 阅读
  4. 基于springboot的校园社团信息管理系统源码数据库

    2024-05-12 17:32:03       15 阅读
  5. 程序分享--常见算法/编程面试题:跳跃游戏 II

    2024-05-12 17:32:03       11 阅读
  6. 【docker】容器优化:一行命令换源

    2024-05-12 17:32:03       11 阅读
  7. Vue.js介绍

    2024-05-12 17:32:03       8 阅读
  8. matlab实现机器学习

    2024-05-12 17:32:03       9 阅读
  9. 以AI对抗AI,瑞数“动态安全+AI”助力在线反欺诈

    2024-05-12 17:32:03       13 阅读