当前位置: 首页 > news >正文

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 比较方式

http://www.lryc.cn/news/482217.html

相关文章:

  • 初始 html
  • 前端 call、bind、apply的实际使用
  • 非关系型数据库NoSQL的类型与优缺点对比
  • 面试击穿mysql
  • PyQt5超详细教程终篇
  • Android OpenGL ES详解——纹理:纹理过滤GL_NEAREST和GL_LINEAR的区别
  • Elasticsearch实战应用:从入门到精通
  • axios平替!用浏览器自带的fetch处理AJAX(兼容表单/JSON/文件上传)
  • 【优选算法 — 滑动窗口】水果成篮 找到字符串中所有字母异位词
  • Go 数据库查询与结构体映射
  • Wi-Fi背后的工作原理与技术发展历程介绍【无线通信小百科】
  • 2024 年(第 7 届)“泰迪杯”数据分析技能赛B 题 特殊医学用途配方食品数据分析 完整代码 结果 可视化分享
  • STM32学习笔记------编程驱动蜂鸣器实现音乐播放
  • ubuntu18.04 安装与卸载NCCL conda环境安装PaddlePaddle
  • AI有鼻子了,还能远程传输气味,图像生成香水
  • 学习配置dify过程记录
  • 简易抽奖器源码以及打包操作
  • 一文了解什么是腾讯云开发
  • [CKS] K8S NetworkPolicy Set Up
  • 【JAVA】Java基础—面向对象编程:构造方法-实现一个Car类,包含多个构造方法,创建不同的汽车对象
  • 初识网络编程TCP/IP
  • 快速入门Zookeeper
  • Filter and Search 筛选和搜索
  • spark的学习-06
  • Linux C/C++ Socket 编程
  • Flutter错误: uses-sdk:minSdkVersion 16 cannot be smaller than version 21 declared
  • Spark 的容错机制:保障数据处理的稳定性与高效性
  • TCP可靠连接的建立和释放,TCP报文段的格式,UDP简单介绍
  • LLMs之PDF:zeroX(一款PDF到Markdown 的视觉模型转换工具)的简介、安装和使用方法、案例应用之详细攻略
  • 开源数据库 - mysql - mysql-server-8.4(gtid主主同步+ keepalived热切换)部署方案