MySQL-初识数据库
目录
一、数据库基础概念
1、SQL
2、数据(Data)
3、数据库(DB)
4、数据库管理系统DBMS
5、数据库系统DBS
6、关系模型(Relational Model)
7、E-R图
8、常见的数据库
9、数据库基本操作
一、数据库基础概念
1、SQL
• SQL是Structured Query Language(结构化查询语言)的缩写。
• SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。
• 在使用SQL时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。
2、数据(Data)
数据(Data)的定义:
• 对客观事物的符号表示,如图形符号、数字、字母等,数据是数据库中存储的基本对 象。
• 在日常生活中,人们直接用语言来描述事物;
• 在计算机中,为了存储和处理这些事物,就要将事物的特征抽象出来组成一个记录来 描述
3、数据库(DB)
数据库(DataBase)的定义:
• 长期储存在计算机内的、有组织的、可共享的数据集合。
• 数据库中的数据按一定的数据模型组织、描述和储存。
• 具有较小的冗余度、较高的数据独立性和易扩展性,并可为各个用户共享。
4、数据库管理系统DBMS
DBMS的主要功能
定义:它把用DDL编写的各级源模式编译成各级目标模式,这些目标模式是对数据库 结构信息的描述,而不是数据本身,它们被保存在数据字典中,供以后数据操纵或 数据控制时使用。
操作:单独数据操纵语言DML(Data Manipulation Language)及其编译程序,实现对数 据库的基本操作。基本操作有两类检索和更新。
保护:数据库的数据恢复、数据库的并发控制、数据完整性控制和数据安全性控制。
维护:数据库的数据导入、转换、存储、数据库性能监控等。
DBMS的优点
相互关联的数据的集合
较少的数据冗余
程序与数据相互对立
保证数据的安全、可靠、正确
数据可以并发使用并能同时保证一致性
5、数据库系统DBS
一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。
数据库系统的发展经历了3个阶段
网状数据库、层次数据库和关系数据库。它们分别采用网状模型层次模型和关系模型作为数据的组织方式。
·网状模型(图形结构)
·层次模型(树形结构)
·关系模型(简单二维表结构 )
实体-联系-模型
• 实体
客观事物在信息世界中称为实体(Entity),它是现实世界中任何可区分、识别的事物。
• 属性
描述实体或者联系的性质或特征的数据项
• 联系
反映事物内部或事物之间的关联集合
常见的实体联系有3种:一对一联系、一对多联系和多对多联系
6、关系模型(Relational Model)
关系的基本概念
• 关系:一个关系就是一张二维表,通常将一个没有重复行、重复列的二维表看成 一个关系,每个关系都有一个关系名。
• 元组:二维表的每一行在关系中称为元组。在MySQL中一个元组对应表中一个 记录。
• 属性:二维表的每一列在关系中称为属性,每个属性都有一个属性名,属性值则 是各个元组属性的取值。(字段—列)
• 域:属性的取值范围称为域。域作为属性值的集合,其类型与范围具体由属性的 性质及其所表示的意义确定。同一属性只能在相同域中取值。
• 关键字:关系中能唯一区分、确定不同元组的属性或属性组合,称为该关系的一 个关键字。
关系模式
• 对关系的描述称为关系模式,其格式为:
‒ 关系名(属性名1, 属性名2, ……, 属性名n)
关系的基本特点
①关系必须规范化,属性不可再分割。
②在同一关系中不允许出现相同的属性名。
③在同一关系中元组的顺序可以任意。
④在同一关系中属性的顺序可以任意。
关系运算
选择、投影、连接
·选择:从关系模式中找出满足给定条件的元组组成新的关系
‒ (从行的角度进行的运算)
·投影:从关系模式中指定若干属性组成新的关系
‒ (从列的角度进行的运算)
·连接:从两个关系的笛卡儿积中选取属性间满足一定条件的元组,组成新的关系
假设集合A={a, b},集合B={0, 1, 2},则两个集合的笛卡尔积为{(a, 0), (a, 1),
(a, 2), (b, 0), (b, 1), (b, 2)}。
类似的例子有,如果A表示某学校学生的集合,B表示该学校所有课程的集合
则A与B的笛卡尔积表示所有可能的选课情况。
关系的完整性约束
(1)实体完整性:主属性值(主关系键的值)不能取空值
如:学生信息表(学号,姓名,性别,年龄,地址)中学号不能为空。
(2)参照完整性:主键和外键的关系
如:学生表与选课表之间用学号建立关联。学生表是主表,选课表是从表。 若向从表中输入一条新纪录,系统会检查记录的学号是否在主表中存在。 若存在,则允许此操作,否则将拒绝输入。
(3)域完整性:限制了某些属性中出现的值,把属性限制在一个有限的集合中。
如:若属性类型是正整数,那么输入值则不能为小数等其它任何非整数。
关系模型的规范式
(1)第一范式1NF:无重复的列
如果关系R的所有属性均为简单属性,即每个属性都是不可再分的,则称R 满足第一范式
(2)第二范式2NF:如果关系R满足第一范式,且每一个非主键字段完全依赖于 主键,则称R满足第二范式。
学生:Student(学号,姓名,年龄);
课程:Course(课程名称,学分);
选课关系:SelectCourse(学号,课程名称,成绩)。
(3)第三范式3NF:如果关系R满足第二范式,且非主键字段之间不存在依赖关 系,则称R满足第三范式。
存在一个部门信息表,其中每个部门有部门编号(dept_id)、部门名称、部门简介等信息。
那么在员工信息表中列出部门编号后就不能再将部门名称、部门简介等与部门有关的信息再加入员工信息表中
7、E-R图
E-R图也称实体-联系图(Entity Relationship Diagram)提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。
通常用矩形表示实体型,矩形框内写明实体名
用椭圆表示实体属性,椭圆内写明实体属性名
用菱形表示实体型间的联系,在菱形内写明联系名
用线段连接起
8、常见的数据库
• Oracle
应用广泛、功能强大,分布式数据库系统
可移植性好
• MySQL
开源、免费、与PHP组成经典的LAMP组合
快速的、可靠的和易于使用
• SQL Server
Web上最流行的用于存储数据的数据库
易用性好但只能在Windows上运行
9、数据库基本操作
启动mysql服务----->net start mysql
连接数据库---->mysql -h IP地址 -u root -p
查看现有数据库---->show databases;
新建数据库----->create database 数据库名;
删除数据库---->drop database 数据库名;
使用数据库---->use 数据库名;
修改数据库字符集比较方式---->alter database 数据库名称 character set 字符集 collate 比较方式
相关文章:
MySQL-初识数据库
目录 一、数据库基础概念 1、SQL 2、数据(Data) 3、数据库(DB) 4、数据库管理系统DBMS 5、数据库系统DBS 6、关系模型(Relational Model) 7、E-R图 8、常见的数据库 9、数据库基本操作 一、数据库…...
初始 html
html 文件结构 html 标签是整个 html 文件的根标签(最顶层标签) head 标签中写页面的属性. body 标签中写的是页面上显示的内容 title 标签中写的是页面的标题 <html><head><title>这是一个标题</title></head><body></body> <…...
前端 call、bind、apply的实际使用
目录 一、call 1、继承的子类可以使用父类的方法 2、可以接收任意参数 二、call、apply、bind比较 1、案例一 2、案例二 三、总结 这个三个方法都是改变函数的this指向的方法。 一、call 代码: const obj{uname:"pink"}function fn(){console.log…...
非关系型数据库NoSQL的类型与优缺点对比
NoSQL数据库根据数据模型和应用场景主要分为四种类型:键值型、列族型、文档型和图形型。以下是对每种类型的详细描述,包括其应用场景、优缺点的比较: 1. 键值型数据库 (Key-Value Store) 典型代表 RedisMemcachedAmazon DynamoDB 应用场景…...
面试击穿mysql
Mysql三大范式: 第一范式(1NF): 不符合第一范式的典型情况是在一个字段中存放多种不同类型的详细信息。例如,在商品表中,若将商品名称、价格和类型都存储在同一个字段中,会带来诸多弊端。首先,在…...
PyQt5超详细教程终篇
PyQt5超详细教程 前言 接: [【Python篇】PyQt5 超详细教程——由入门到精通(序篇)](【Python篇】PyQt5 超详细教程——由入门到精通(序篇)-CSDN博客) 建议把代码复制到pycahrm等IDE上面看实际效果,方便理…...
Android OpenGL ES详解——纹理:纹理过滤GL_NEAREST和GL_LINEAR的区别
目录 一、概念 1、纹理过滤 2、邻近过滤 3、线性过滤 二、邻近过滤和线性过滤的区别 三、源码下载 一、概念 1、纹理过滤 当纹理被应用到三维物体上时,随着物体表面的形状和相机视角的变化,会导致纹理在渲染过程中出现一些问题,如锯齿…...
Elasticsearch实战应用:从入门到精通
在当今这个数据爆炸的时代,如何快速、有效地从海量数据中检索信息,已经成为了许多企业和开发者面临的挑战。Elasticsearch,作为一个基于Lucene的搜索引擎,以其强大的全文搜索能力、分布式特性以及易用性,成为了解决这一…...
axios平替!用浏览器自带的fetch处理AJAX(兼容表单/JSON/文件上传)
fetch 是啥? fetch 函数是 JavaScript 中用于发送网络请求的内置 API,可以替代传统的 XMLHttpRequest。它可以发送 HTTP 请求(如 GET、POST 等),并返回一个 Promise,从而简化异步操作 基本用法 /* 下面是…...
【优选算法 — 滑动窗口】水果成篮 找到字符串中所有字母异位词
水果成篮 水果成篮 题目描述 因为只有两个篮子,每个篮子装的水果种类相同,如果从 0 开始摘,则只能摘 0 和 1 两个种类 ; 因为当我们在两个果篮都装有水果的情况下,如果再走到下一颗果树,果树的水果种类…...
Go 数据库查询与结构体映射
下面是关于如何使用 Go 进行数据库查询并映射数据到结构体的教程,重点讲解 结构体字段导出 和 db 标签 的使用。 Go 数据库查询与结构体映射教程 在 Go 中,我们可以使用 database/sql 或 sqlx 等库与数据库进行交互。为了方便地将数据库查询结果映射到结…...
Wi-Fi背后的工作原理与技术发展历程介绍【无线通信小百科】
1个视频说清楚WIFI:频段/历程/技术参数/常用模块 智能手机拥有率越来越高的今天,大家已经习惯了通过无线网络上网的方式。除了在外面需要用手机流量,我们通常在家里或者机场,商场都可以通过Wi-Fi连接上网。本期文章将为大家介绍Wi…...
2024 年(第 7 届)“泰迪杯”数据分析技能赛B 题 特殊医学用途配方食品数据分析 完整代码 结果 可视化分享
一、背景特殊医学用途配方食品简称特医食品,是指为满足进食受限、消化吸收障碍、代谢素乱或者特定疾病状态人群对营养素或者膳食的特殊需要,专门加工配置而成的配方食品,包括0月龄至12月龄的特殊医学用途婴儿配方食品和适用于1岁以上的特殊医…...
STM32学习笔记------编程驱动蜂鸣器实现音乐播放
1. 硬件准备 STM32开发板:STM32F407系列蜂鸣器:常见的蜂鸣器分为两类:有源蜂鸣器和无源蜂鸣器。若使用有源蜂鸣器,只需提供电源和控制信号即可;若使用无源蜂鸣器,则需要控制频率。外接电源(可选…...
ubuntu18.04 安装与卸载NCCL conda环境安装PaddlePaddle
cuda版本11.2 说明PaddlePaddle需要安装NCCL 1、Log in | NVIDIA Developer 登录官网 找到对应版本 官方提供了多种安装方式,本文使用Local installers (x86)本地安装 点击对应的版本下载如: nccl-local-repo-ubuntu1804-2.8.4-cuda11.2_1.0-1_amd6…...
AI有鼻子了,还能远程传输气味,图像生成香水
众所周知,图像、音乐能用AI生成,但出乎意料的是,气味也行。最近,一个名叫Osmo的初创公司宣布,他们成功地将气味数字化了。第一个成功的案例是“新鲜的夏季李子”,而且复现出的味道“闻起来”很不错。整个过…...
学习配置dify过程记录
最近在学习安装 Dify 并集成 Ollama 和 Xinference,学习过程中遇到很多问题,所以我都记录下来。 本人电脑环境:MacBook Pro 15.1系统 基本是基于B站教程一步步搭建: 【Dify快速入门 | 本地部署Dify基于Llama 3.1和OpenAI创建聊天机器人与知…...
简易抽奖器源码以及打包操作
import wx import random import time# 定义Myframe类,继承Frame class Myframe(wx.Frame):# 奖品rewards [桥本香奈, 二代CC, NaNa, 情深叉]# 构造方法def __init__(self):# 父类初始化super().__init__(None, title主界面, size(500, 400), pos(500, 200))# 创建面板&#x…...
一文了解什么是腾讯云开发
一文了解什么是腾讯云开发 关于云开发的猜想腾讯云开发腾讯云开发的优势无服务跨平台轻松托管节约成本 快速上手云开发环境快速搭建管理后台 云开发体验 关于云开发的猜想 说到云开发,作为开发者的大家是否大概就有了想法。比如说过去的开发工作都是在自己本地电脑…...
[CKS] K8S NetworkPolicy Set Up
最近准备花一周的时间准备CKS考试,在准备考试中发现有一个题目关于不安全项目修复的题目。 专栏其他文章: [CKS] Create/Read/Mount a Secret in K8S-CSDN博客[CKS] Audit Log Policy-CSDN博客 -[CKS] 利用falco进行容器日志捕捉和安全监控-CSDN博客[CKS] K8S Ne…...
【JAVA】Java基础—面向对象编程:构造方法-实现一个Car类,包含多个构造方法,创建不同的汽车对象
在Java中,构造方法则是用于创建对象的特殊方法。通过构造方法,可以在创建对象时初始化其属性。构造方法的重载允许我们根据不同的需求定义多个构造方法,从而灵活地创建对象。 我们可以将汽车的构造方法比作汽车的配置选项。比如,…...
初识网络编程TCP/IP
目录 前言相关名词解释应用层协议——HTTP传输层协议socketTCP帧头格式三次握手、四次挥手 UDPTCP的socket实现 参考博文 前言 刚碰到网络编程,会出现一堆协议、概念、这层次那技术的,头都大了,还是得总结总结…… 相关名词解释 ✨✨网络…...
快速入门Zookeeper
Zookeeper ZooKeeper作为一个强大的开源分布式协调服务,扮演着分布式系统中至关重要的角色。它提供了一个中心化的服务,用于维护配置信息、命名、提供分布式同步以及提供组服务等。通过其高性能和可靠的特性,ZooKeeper能够确保在复杂的分布式…...
Filter and Search 筛选和搜索
Goto Data Grid 数据网格 Filter and Search 筛选和搜索 Filter Drop-down Menus (Excel-style) 筛选器下拉菜单(Excel 样式) 要调用列的筛选器下拉菜单,请单击列标题中的筛选器图标。在 “Values” 选项卡中,用户可以从 Data …...
spark的学习-06
SparkSQL读写数据的方式 1)输入Source 方式一:给定读取数据源的类型和地址 spark.read.format("json").load(path) spark.read.format("csv").load(path) spark.read.format("parquet").load(path) 方式二:…...
Linux C/C++ Socket 编程
本文目录 Linux C语言 socket 编程 client 端头文件 unistd.h & arpa/inet.h1. **unistd.h**2. **arpa/inet.h** socket() 创建套接字sockaddr_in 结构体inet_pton()connect()send()recv()send() 和 recv() 中的 flags 参数**默认行为(flags 0)的特…...
Flutter错误: uses-sdk:minSdkVersion 16 cannot be smaller than version 21 declared
前言 今天要做蓝牙通信的功能,我使用了flutter_reactive_ble这个库,但是在运行的时候发现一下错误 Launching lib/main.dart on AQM AL10 in debug mode... /Users/macbook/Desktop/test/flutter/my_app/android/app/src/debug/AndroidManifest.xml Err…...
Spark 的容错机制:保障数据处理的稳定性与高效性
Spark 的介绍与搭建:从理论到实践_spark环境搭建-CSDN博客 Spark 的Standalone集群环境安装与测试-CSDN博客 PySpark 本地开发环境搭建与实践-CSDN博客 Spark 程序开发与提交:本地与集群模式全解析-CSDN博客 Spark on YARN:Spark集群模式…...
TCP可靠连接的建立和释放,TCP报文段的格式,UDP简单介绍
TCP连接的建立(三次握手) 建立连接使用的三报文 SYN 报文仅用于 TCP 三次握手中的第一个和第二个报文(SYN 和 SYN-ACK),用于初始化连接的序列号。数据传输阶段不再使用 SYN 标志。 SYN 报文通常只携带连接请求信息&a…...
LLMs之PDF:zeroX(一款PDF到Markdown 的视觉模型转换工具)的简介、安装和使用方法、案例应用之详细攻略
LLMs之PDF:zeroX(一款PDF到Markdown 的视觉模型转换工具)的简介、安装和使用方法、案例应用之详细攻略 目录 zeroX的简介 1、支持的文件类型 zeroX的安装和使用方法 T1、Node.js 版本: 安装 使用方法 使用文件 URL: 使用本地路径&…...
中华人民共和国建设部官方网站/经典模板网站建设
大多数情况下,为了保证对外服务的安全性,我们在服务端实现的为服务接口时往往都会有一定的权限校验机制,比如对用户登录状态的校验等;同时为了防止客户端在发起请求时被篡改等安全方面的考虑,还会有一些签名校验的机制…...
云网站 制作/郑州网站排名推广
青岛玻璃板液位计,重锤式料位计波束能量较低,可安装于金属、非金属容器或管道内,对及环境均无害。部分雷达传感器使用两种不同的频率范围,因此应用范围可以更广。导波雷达物位计是一种微波物位计,它是微波(雷达)技术的一种运用。它…...
wordpress乐器模版/查关键词热度的网站
安装miniconda第一步:下载 miniconda3wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh第二步:配置执行权限#7421 r4,w2,x1 可读可写可运行 chmod 777 Miniconda3-latest-Linux-x86_64.sh #举例&#…...
网站开发专业就业前系军/南京seo域名
处理JavaScript函数上下文时可能遇到一些问题。在回调函数中(例如事件处理器),函数上下文与预期不符,但可以使用call或apply方法绕过。在本节中,我们看看另外两个选择:箭头函数和bind方法,在一些…...
高大上的公司网站/搜索引擎优化的方法
本代码为 Springboot vue.js 前后分离 跨域 版本 (权限控制到菜单和按钮)后台框架:springboot2.1.2 mybaitsmaven接口前端页面:html vue.js 形式 jquery ajax 异步跨域 json 格式数据交互 前后分离,前后台分开部署&a…...
怎么套用网站模板/长沙快速排名优化
前言 自从 Activiti 和 JBPM4 分家以后,Activiti 目前已经发展到了版本7,本着稳定性原则我们最终选择了6,之前还有一个版本5。 问题 在开发使用的过程中发现 Activiti 自带的 Web 端作图工具居然没有图片导出功能,这显然是不能满足…...