软件设计之MySQL(1)

软件设计之MySQL(1)

此篇应在JavaSE之后进行学习:
路线图推荐:
【Java学习路线-极速版】【Java架构师技术图谱】
Navicat可以在软件管家下载
使用navicat连接mysql数据库创建数据库、表、转储sql文件,导入sql数据

学习内容:

  1. 数据库概述
  2. 表、记录、字段
  3. Navicat使用注意事项
  4. SQL

1、数据库概述

为什么要使用数据库

在这里插入图片描述

数据库相关概念

在这里插入图片描述

关系型数据库和非关系型数据库

关系型数据库(RDBMS)
1、以的形式存储数据,一系列的行和列被称为,一组组成一个
2、关系体现在表与表之间的联系,各种联系均用关系模型表示
3、SQL就是关系型数据库的查询语言
非关系型数据库(非RDBMS)
1、主要体现为舍得
2、体现在,非关系型数据库通常舍弃了严格的ACID、复杂的SQL查询能力
3、体现在由于没有复杂的查询和一致性要求,非关系型数据库通常在数据写入读取的性能上表现优异;其擅长在分布式环境中进行水平扩展,可以处理大量的数据·和·高并发的请求

ORM思想

Object Relational Mapping
数据库中的一个表对应Java中的一个类
数据库中的一条数据对应类中的一个对象
数据库中的一列对应类中的一个属性、属性(field)
在这里插入图片描述

2、表、记录、字段

E-R(entity-relationship,实体-联系)模型中三个主要概念:实体集属性联系集
联系集–>表的关联关系:四种。一对一关联一对多关联多对多关联自我引用

一对一关联(one to one)

“一对一关联”指的是在数据库设计中,一个表中的每一行记录只能与另一个表中的一行记录相关联,也就是说,两个表之间的这种关系是独占的,每个对象在另一个表中只能有一个对应的对象。
举例:学生表:学生、姓名、手机号码、班级信息、紧急联系人
常用信息表:学生、姓名、手机号
不常用信息表:学生、班级信息、紧急联系人

一对多关系(one to many)

一对多关系指的是一个表中的一条记录可以与另一个表中的多条记录相关联。例如,一个班级可以有多个学生,一个客户可以有多个订单。
举例:员工表与部门表
员工表:编号、姓名、所属部门
部门表:编号、名称、简介

多对多关系(many to many)

它表示一个表中的多条记录可以与另一个表中的多条记录相关联,通常,这种关系需要通过一个**中间表(或连接表,桥表)**来实现
举例:学生选课
学生信息表:一行代表一个学生信息
课程信息表:一行代表一个课程信息
选课信息表:一个学生可以选多门课、一门课可以被多个学生选择
其中选课信息表是把各个学生选的各个课程作为数据存放
具体而言是:它包含了两个外键字段:StudentID 和 CourseID,分别指向 Student 和 Course 表中的主键。这个表记录了学生与课程之间的所有关联。
在这里插入图片描述

自我引用(Self reference)

自我引用指的是表中的一条记录可以与同一个表中的另一条记录相关联
举例:
假设有一个表示公司员工的表,每个员工都有一个经理,而经理本身也是员工。我们可以使用自我引用来表示这种关系。

3、Navicat使用注意事项

在添加连接后,要双击连接,使图案变绿,才是打开状态
新建数据库就是在该图案处,点右键创建
新建表的第一步是添加字段:例如学生的id、姓名、身份证等字段(属性),添加完后保存,并对表命名
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

SQL

SQL是访问和处理数据库的标准的计算机语言

SQL分类

在这里插入图片描述

SQL语言的规则与规范

规则1

在这里插入图片描述

规则 2(注释结构)

在这里插入图片描述

规则3(数据库导入)

方式1:在命令行客户端登录mysql,使用source指令导入
mysql> source d:\mysqldb.sql
提醒:Windows 系统中的路径应该使用双反斜杠 (\) 或正斜杠 (/) 来避免转义问题
方式2:在Navicat(或别的)导入sql
在这里插入图片描述

规则4(命名规则)

在这里插入图片描述

规范1(大小写规范)

在这里插入图片描述

  • 17
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值