软件设计之MySQL(1)

news2024/9/22 19:43:47

软件设计之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(大小写规范)

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2039003.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

6.IIC

理论 参考51单片机IIC理论:链接 在起始信号后必须发送一个7位从机地址 1位方向位,用“0”表示主机发送数据,“1”表示主机接收数据 代码编写 IIC三个模式配置 IIC(阻塞模式)配置 主要方式 IIC(中断模式)配置 IIC(DMA模式)配置 阻塞模式 mi…

智源研究院举办第一期数据与行业应用Workshop

近日,北京智源人工智能研究院联合中国互联网协会人工智能工委会、中国AIIA联盟数据委员会、CSDN举办了以“行业革新,数据先行”为主题的第一期数据与行业应用Workshop。来自智源研究院、中国信息通信研究院、航天信息技术有限公司、北京市科学技术研究院…

学习记录第二十七天

进程 wait函数 功能 等待子进程结束:父进程调用wait函数后,会暂停执行,直到它的某个子进程结束。收集子进程状态:当子进程结束时,wait函数会返回子进程的终止状态,包括是正常终止还是被信号终止等信息。…

单链表leetcode刷题/中(C语言版)

目录 题目1:合并两个有序链表 题目2:分割链表 题目3:随机链表的复制 “单链表leetcode刷题/上”的链接:https://blog.csdn.net/2302_80297338/article/details/140409360?spm1001.2014.3001.5501 题目1:合并两个有…

Ecovadis认证评估的四个方面 Ecovadis评估结果呈现形式

Ecovadis的认证过程严谨,基于国际公认的标准和准则进行评估。获得Ecovadis认证的企业,在社会责任、环境保护、商业道德和可持续采购等方面的表现得到了专业认可,这有助于提升企业的信誉度和透明度,增强利益相关者的信任。 Ecovad…

【CTF | WEB】003、攻防世界WEB题目之xff_referer

文章目录 xff_referer题目描述:解题思路:XFF与Referer基本了解1. XFF(X-Forwarded-For):2. Referer:简单总结: 解题实操: xff_referer 题目描述: X老师告诉小宁其实xff和referer是可以伪造的。…

在 Linux 系统中下载 Python 并配置环境

哈喽,大家好,木易巷来啦! 在 Linux 系统中下载 Python 并配置环境,主要包含以下几个核心步骤: ▍1、安装 Python 多数 Linux 发行版已预装 Python,但您可能需要安装不同版本或更新现有版本。 打开终端。 …

SpringBoot(Ⅰ)——HelloWorld和基本打包部署+Pom依赖概述+@SpringBootApplication注解+自动装配原理+约定大于配置

前言 如果SSM学的比较好,那么SpringBoot说白了就两件事:约定大于配置和自动装配 SpringBoot不会提供任何的功能拓展,完全依赖我们手动添加 所以SpringBoot的本质是一个依赖脚手架,可以快速集成配置各种依赖 1.1 SpringBoot相关依赖 创建…

失败:Windows--WSL2--Ubuntuon--Docker

编写目的: 在Windows上安装Docker,用Docker安装Gitlab、Jenkins等软件。 文章记录一下Windows上安装Docker的过程。 参考文档: 旧版 WSL 的手动安装步骤 | Microsoft Learn 下面用"参考文档"代替 目录 第一步:启…

学习计算机网络(三)——IP地址

一、IP协议(IPV4、IPV6) 表示形式(两种): 点分十进制、二进制 地址被点分为4个部分,每个部分8位,总共32位。 A、B、C类地址都是单播地址(一对一通信),D类…

谷粒商城实战笔记-175~177-商城业务-检索服务-检索查询接口开发

文章目录 一,175-商城业务-检索服务-检索查询参数模型分析抽取二,176-商城业务-检索服务-检索返回结果模型分析抽取三,177-商城业务-检索服务-检索DSL测试-查询部分四,178-商城业务-检索服务-检索DSL测试-聚合部分问题记录解决方案…

redis散列若干记录

字典 redis本身使用字典结构管理数据 redis使用hash表实现字典结构 使用了什么hash算法 使用SipHash算法,该算法能有效防止Hash表碰撞,并有不错的性能 hash冲突怎么解决 使用链表法解决hash冲突 hash表如何扩容 渐进式扩容,不会引起线程长期阻…

趣味算法------可截断素数

目录 题目描述: 思路解析: 质数判断函数: 反转函数: 右截断素数判断函数: 左可截断素数: 具体代码: 题目描述: 左截断素数是不包含 0 位的素数,当连续删除第一个数…

大四生都在的用8款AI论文生成器在线网站!

在当前的AI技术浪潮中,智能AI写作工具已经成为了学术研究和论文撰写的重要助手。对于大四生来说,选择合适的AI论文生成器可以大大提高写作效率和质量。以下是8款值得推荐的AI论文生成器在线网站: 一、千笔-AIPassPaPer 这是一款功能全面且高…

花几千上万学习Java,真没必要!(四十六)

Lambda表达式: 测试代码1: package test.lambda; public class LambdaDemo { // 实现Runnable接口的类 static class MyThread implements Runnable { Override public void run() { System.out.println("线程运行中:通过实现Runn…

【智能流体力学】ANSYS Fluent流体仿真基础、深度学习驱动思想及其CAX计算机辅助集成技术

目录 一、CAX计算机辅助集成技术二、计算机辅助工程(CAE)三、SCDM (Species Concentration Display Model) 显示和分析物质浓度分布的模型1. **SCDM概述**2. **主要功能**3. **功能特点**4. **使用步骤**5. **应用实例**6. **优点与限制**四、行业应用五、Fluent 软件功能1. …

Datawhale AI 夏令营 第四期 AIGC Task2

活动简介 活动链接:Datawhale AI 夏令营(第四期) 以及AIGC里面的本次任务说明:Task 2 精读代码,实战进阶 和上次任务一样,链接里的教程非常详细,对小白非常友好,从使用AI助手理解…

网工内推 | 网络、集成工程师,最高17K,NP以上认证优先

01 广东南方新媒体股份有限公司 🔷招聘岗位:网络工程师 🔷岗位职责: 1、负责基础设施运维管理,包括机房环境设备、网络设备、安全设备与服务器等,负责机房设备上架、下架、位置调整、布线等的常规操作。…

day36——homework

二、基于UDP的TFTP文件传输 1)tftp协议概述 简单文件传输协议,适用于在网络上进行文件传输的一套标准协议,使用UDP传输 特点: 是应用层协议 基于UDP协议实现 数据传输模式 octet:二进制模式(常用&am…

数据同步工具DataX

目录 1.概要 2.简介 3.DataX处理异构数据源 4.DataX的框架 5.DataX的核心架构 6.DataX的安装 7.DataX的使用案例 8.mysql同步到mysql案例 1.概要 本篇文件将介绍一款数据同步工具DataX的原理,安装,以及使用。 2.简介 官网连接:https…