1.数据库的定义

数据:描述事物符号记录。(包括数字、文字、图形、图像、声音、档案记录等)以记录形式统一的格式进行存储。
  广义上的数据:出现在计算机内部的一切二进制数据流都为数据
  狭义上的数据:只是数字或符号形式记录的数据

2.数据层次模型:

数据存在文本文件中,采用什么结构组织数据,称为数据结构模型。

文件系统:树状模型(层次模型)

层次模型、网状结构、关系模型(数据组织成二维表,将数据组织成二维关系,类似与excel表,分为行和列)

二维关系:行(row) 列(column)

表与表的关系性 (降低数据冗余)表与表的约束性

3.数据库的构成:

数据:

表:将不同的记录(数据)组织在一起,就形成了表;用于存储数据。   (表是存储数据的唯一单元)

库:表的集合体,是存储数据的仓库,以一定的组织方式存储的互相有关的数据。

MySQL可以支持多库,   ORACLE只有一个数据库

 

4.数据库管理系统(DBMS)

将二维关系数据结构模型规范得以实现,我们称为数据库管理系统DBMS

遵循三种基本范式才能被称为关系型数据库,关系型数据库管理系统称为RDBMS

三大范式:

第一范式:在满足关系模型基础之上,任意一列必须是原子的(不可分割)

第二范式:在满足第一范式的情况下,必须有一列的数据可以区分每一行的数据(主键)

第三范式:在满足前两范式的情况下,在表和表有连接关系的情况下,如果第一张表依赖第二张表,那么被依赖的表的字段必须是能够区别每一行的数据的字段(主键)

数据库管理系统的分类:

DBMS:数据库管理系统

RDBMS:关系型数据库管理系统

NOSQL:非关系型数据库

NEWSQL:新型数据库

关系型数据库管理系统(RDBMS)

包括  开源解决方案: mysql、mariadb、Percona-server、pgsql  .....

商业解决方案: ORACLE、DB2、MS-SQL(SQLSERVER)  ......

基本组成结构:磁盘空间管理器、缓冲管理器、文件和存取接口、锁管理器、事务管理器、恢复管理器、SQL引擎

关系型数据库的事务:ACID

A:原子性

C:一致性

I:隔离性

D:持久性

SQL引擎:传递SQL语句进行解释执行

数据存储   C/S架构

S:服务端,监听于套接字,接受并处理客户端应用请求、

C:客户端:CLI 命令行字符界面   GUI:图形化处理界面

5.数据库内容的部分基本概念

(1):约束:constraint   向数据表提供的数据要遵守的限制

完整性约束:表约束和键约束

主键(primary key):一个或多个字段的组合,填入的数据必须在本表中唯一标识本行,必须提供数据,不能为空(not null),一个表只能有一个。

唯一键(unique key):一个或多个字段的组合,填入的数据必须在本表中唯一标识本行,可以为空,一个表可以有多个。

外键:一个表中的某字段可填入数据取决于另一个表的主键已有的数据。

            

(2):索引:将表中的一个或多个字段中的数据复制一份另存,并且此些需要按照特定次序排序存储。

EG:图书馆找书,没有了索引,就要用遍历的方式,有了索引,更方便找到

3():关系运算:(非常重要,主要运用在数据的查询操作)(非常重要)

选择:挑选出符合条件的行。

投影:挑选出需要的字段。//select 可以查询字段

连接:(设计连表操作的运算)

一.正式学习Mysql

(1)如何连接mysql

在客户端   输入mysql

看到ODBC说明环境变量已经配置好了

选项  :

-uUSERNAME: 用户名     默认为超级用户root(Linux)

-hHOST:服务器主机        默认为localhost

-pPASSWORD:用户的密码  (Linux默认为空)

注意:mysql用户帐号由两部分组成:’USERNAME’@’HOST’;其中HOST用于此用户通过哪些远程主机连接mysql服务。

(2)mysql的基本使用操作    格式和基本语句

USE、、、、使用某个数据库(、、、、use是客户端,可加可不加分号,针对的对象是mySQL

SHOW、、、

显示库里面所有的表,显示所有的库

SELECT  (查询表中的数据)

DESC(查询表的结构相关属性)

二.关系型数据库常见组件(视图层的组件)

数据库:database

表    :table

行:row

列:colum

索引:index

视图:view

用户:user

权限:privilege

跟程序开发相关的(sql引擎一般都支持过程式编程,支持条件判断、循环等。调用sql代码)

存储过程:procedure          直接调用,仅仅做了数据加工,不返回结果。

存储函数:function            调用完后有返回结果的代码片段

触发器:trigger               也是一片代码片段,特殊事件发生,满足条件触发。

事件调度器:event scheduler   定期执行内建任务,完成周期性调度任务

SQL语句

DDL:数据定义语言 create , drop,alter(针对的组件基本为数据库  数据表...... )

DML: 数据操作语言 INSERT,DELETE,UPDATE,SELECT////最重要

DCL:数据控制语言 GRANT,REVOKE(授权和撤销授权).....

 三.SQL语句的操作:

查看mysql的状态和版本      status 相当于\s

创建库  CREATE DATABASE [IF NOT EXISTS] ‘DB_NAME’;(只是创建了一个数据库,所以里面是空的)

添加IF NOT EXISTS回避报错的风险

删除库  DROP DATABASE [IF EXISTS] ‘DB_NAME’;(非常危险,生产环境不建议使用)//【】可有可无

删了就没有回收站,永远丢失了

资料一般放在数据库里,像财务信息,银行卡号

创建表:CREATE TABLE 表名(字段1 数据类型 修饰符,字段2 数据类型 修饰符......) [ENGINE=’’]

创建表时候要弄清在哪一个库里 所以先use 哪个库

创建表先把它的列给定义好,而且这个表是一张空表,行是添加数据上才有的

查看存储引擎:SHOW ENGINES

删除表  DROP TABLE [IF EXISTS] ‘tbl_name’;  (也非常危险,谨慎操作)

查询数据 SELECT col1,col2,.... FROM tbl_name;//col1...加投影字段

MySQL(windows版本)命令行的快捷操作键

ESC:光标删除至最左侧

F3:上一次命令再操作补全

F7:之前操作过的sql命令列表

exit:退出sql接口(或者quit   或者 \q

Mysql基础知识一的更多相关文章

  1. mysql基础知识大全

    前言:本文主要为mysql基础知识的大总结,mysql的基础知识很多,这里作简单概括性的介绍,具体的细节还是需要自行搜索.当然本文还有很多遗漏的地方,后续会慢慢补充完善. 数据库和数据库软件 数据库是 ...

  2. mysql基础知识语法汇总整理(二)

    mysql基础知识语法汇总整理(一) insert /*insert*/ insert into 表名(字段列表) values(值列表); --蠕虫复制 (优点:快速复制数据,测试服务器压力) in ...

  3. mysql基础知识语法汇总整理(一)

    mysql基础知识语法汇总整理(二)   连接数据库操作 /*连接mysql*/ mysql -h 地址 -P 端口 -u 用户名 -p 密码 例如: mysql -u root -p **** /* ...

  4. MySQL 基础知识梳理

    MySQL 的安装方式有多种,但是对于不同场景,会有最适合该场景的 MySQL 安装方式,下面就介绍一下 MySQL 常见的安装方法,包括 rpm 安装,yum 安装,通用二进制安装以及源码编译安装, ...

  5. MySQL基础知识:启动管理和账号管理

    整理.记录常用的MySQL基础知识:时间久了,很多就忘记了. 操作系统环境为MacOS Catalina, MySQL版本为: 8.0.13 MySQL Community Server - GPL. ...

  6. MySQL基础知识:创建MySQL数据库和表

    虚构一个微型在线书店的数据库和数据,作为后续MySQL脚本的执行源,方便后续MySQL和SQL的练习. 在虚构这个库的过程中,主要涉及的是如何使用命令行管理 MySQL数据库对象:数据库.表.索引.外 ...

  7. MySQL基础知识:Character Set和Collation

    A character set is a set of symbols and encodings. A collation is a set of rules for comparing chara ...

  8. mysql基础知识详解

    分享一些mysql数据库的基础知识. 1.每个客户端连接都会从服务器进程中分到一个属于它的线程.而该连接的相应查询都都会通过该线程处理.2.服务器会缓存线程.因此并不会为每个新连接创建或者销毁线程.3 ...

  9. Mysql学习总结(4)——MySql基础知识、存储引擎与常用数据类型

    1.基础知识 1.1.数据库概述 简单地说:数据库(Database或DB)是存储.管理数据的容器: 严格地说:数据库是"按照某种数据结构对数据进行组织.存储和管理的容器". 总结 ...

  10. 一、MySQL基础知识

    一.背景介绍 我们每天都在访问各种网站.APP,如微信.QQ.抖音,今日头条等,这些东西上面都存在大量的信息,这些信息都需要有地方存储,存储在哪里呢?数据库. 所有我们需要开发一个网站.APP,数据库 ...

随机推荐

  1. 【Weiss】【第03章】链表例程

    这种基础例程,如之前所提,会有一个实现和一个简单的测试代码. 链表其实没什么可说的,其实包括后面的栈和队列也没什么可说的,直接放代码吧. 下面这个是测试代码 #include <iostream ...

  2. HTML每日学习笔记(1)

    7.15.2019 1.HTML脚本——JavaScript的嵌入使用,使 HTML 页面具有更强的动态和交互性. <script> 标签用于定义客户端脚本,比如 JavaScript. ...

  3. LeetCode-使数组唯一的最小增量

    题目描述: 给定整数数组 A,每次 move 操作将会选择任意 A[i],并将其递增 1. 返回使 A 中的每个值都是唯一的最少操作次数. 示例: 输入:[1,2,2] 输出:1 解释:经过一次 mo ...

  4. 最详细的 Spring Boot 多模块开发与排坑指南

    创建项目 创建一个 SpringBoot 项目非常的简单,简单到这里根本不用再提.你可以在使用 IDEA 新建项目时直接选择 Spring Initlalize 创建一个 Spring Boot 项目 ...

  5. Journal of Proteome Research | Quantifying Protein-Specific N-Glycome Profiles by Focused Protein and Immunoprecipitation Glycomics (分享人:潘火珍)

    文献名:Quantifying Protein-Specific N-Glycome Profiles by Focused Protein and Immunoprecipitation Glyco ...

  6. Python-生成器实现简单的"生产者消费者"模型

    一.使用生成器实现简单的生产者消费者模型, 1.效果截屏 代码如下: import time def consumer(name): print('%s 开始买手机' %name) while Tru ...

  7. 目标检测 | RetinaNet:Focal Loss for Dense Object Detection

    论文分析了one-stage网络训练存在的类别不平衡问题,提出能根据loss大小自动调节权重的focal loss,使得模型的训练更专注于困难样本.同时,基于FPN设计了RetinaNet,在精度和速 ...

  8. 【codeforces】Codeforces Round #606 E. Two Fairs——图论

    题目链接 题意 给你一张无向图,求出有多少对点对(x, y)满足从点x到点y的所有路径必同时经过点a和点b 分析 单点 首先考虑假如点a和点b是同一个点的情况 我从任意的一点出发,把所有与点a/b相连 ...

  9. Springboot学习笔记【持续更新】

    1.Springboot四大核心: 自动配置 与Spring应用程序和常见的应用功能,Springboot能自动提供相关配置 起步依赖 告诉Springboot需要什么功能,它就能引入需要的依赖库 A ...

  10. 使用Python创建自己的Instagram滤镜

    不知道你有没有使用过Instagram滤镜,它们非常方便,只需单击几个按钮,就可以变换我要发布的照片​​. 你是否想过自己可以创建一个?答案是可以的! 在本文中,我将向你展示如何使用代码和示例图像来创 ...