数据库的概述

数据库Database(DB):按照数据结构组织、存储和管理数据的仓库。本质是一个文件系统。保存一系列有组织的数据。每个数据库都有一个或者多个不同的API用于创建、访问、管理、搜索和复制所保存的数据。

数据库管理系统Database Management System(DBMS):一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制。用户通过数据库管理系统访问数据库中的表内的数据。

结构化查询语言Structured Query Language(SQL):专门用来与数据库通信的语言。

数据库管理系统、数据库和表的关系:

为什么要使用数据库?

持久化:把数据保存到可掉电式存储设备中以供之后使用。数据持久化意味着将内存中的数据保存到硬盘中加以“固化”。持久化的主要作用是将内存中的数据存储在关系型数据库中,也可以存储在磁盘文件、XML数据文件中。

RDBMS和非RDBMS

关系型数据库RDBMS

将复杂的数据结构归结为简单地二元关系(二维表格形式)

术语

  • 数据库: 数据库是一些关联表的集合。
  • 数据表: 表是数据的矩阵。在一个数据库中的表看起来像一个简单的电子表格。
  • 列: 一列(数据元素) 包含了相同类型的数据, 例如邮政编码的数据。
  • **行:**一行(=元组,或记录)是一组相关的数据,例如一条用户订阅的数据。
  • 冗余:存储两倍数据,冗余降低了性能,但提高了数据的安全性。
  • 主键:主键是唯一的。一个数据表中只能包含一个主键。你可以使用主键来查询数据。
  • **外键:**外键用于关联两个表。
  • 复合键:复合键(组合键)将多个列作为一个索引键,一般用于复合索引。
  • **索引:**使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构。类似于书籍的目录。
  • 参照完整性: 参照的完整性要求关系中不允许引用不存在的实体。与实体完整性是关系模型必须满足的完整性约束条件,目的是保证数据的一致性。
  • 表头(header): 每一列的名称;
  • 列(col): 具有相同数据类型的数据的集合;
  • 行(row): 每一行用来描述某条记录的具体信息;
  • 值(value): 行的具体信息, 每个值必须与该列的数据类型相同;
  • 键(key): 键的值在当前列中具有唯一性。

非关系型数据库

  • 键值型数据库

  • 文档型数据库

  • 搜索引擎数据库

  • 列式数据库

  • 图形数据库

MySQL

MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。

主要操作

  1. 查看所有的数据库

    show databases;
    
  2. 创建自己的数据库

    create database 数据库名;
    
  3. 使用自己的数据库

    use 数据库名;
    
  4. 查看某个库的所有表格

    show tables from 数据库名;
    
  5. 创建新的表格

    create table 表名(字段名 数据类型,字段名 数据类型
    );
    
  6. 查看一个表的数据

    select * from 数据表名称;
    
  7. 添加一条记录

    insert into 表名称 values(值列表);
    
  8. 删除表格

    drop table 表名称;
    
  9. 删除数据库

    drop database 数据库名;
    

主要目录结构

MySQL的目录结构 说明
bin目录 所有MySQL的可执行文件。如:mysql.exe
data目录 系统数据库所在的目录
c:\ProgramData\MySQL\MySQL Server 8.0\data\ 用户创建的数据库所在的目录

SQL

分类:

  • **DDL(Data Definition Languages 数据定义语言):**语句定义了不同的数据库、表、视图、索引等数据库对象,还可以用来创建、删除、修改数据库和数据表的结构。

    • create创建、alter修改、drop删除、truncate截断
  • **DML(Data Manipulation Language 数据操作语言):**用于添加删除更新和查询数据库记录,并检查数据完整性。
    • insert插入、update修改、delete删除
  • **DCL(Data Control Language 数据控制语言):**用于定义数据库、表、字段、用户的访问权限和安全级别。
    • grant授权、revoke回收权限
  • DQL(Data Query Language 数据查询语言):
    • select查询

大小写规范

  • MySQL在windows环境下大小写不敏感的

  • MySQL在Linux环境下是大小敏感的

    • 数据库名、表名、表的别名、变量名是严格区分大小写的

    • 关键字、函数名、列名(或字段名)、列的别名(字段的别名) 是忽略大小写的。

  • 推荐采用统一的书写规范

    • 数据库名、表名、表别名、字段名、字段别名等都小写
    • SQL 关键字、函数名、绑定变量等都大写

注释

单行注释:#注释语句-- 注释语句
多行注释:/*注释语句*/

声明:本篇中大部分图片摘自尚硅谷老师的文档,感谢尚老师成就我们一生

数据库学习——基础概念相关推荐

  1. 深度学习入门——深度学习基础概念思维导图

    深度学习基础概念的思维导图,思维导图又叫心智导图,是表达发散性思维的有效图形思维工具 ,它简单却又很有效,是一种实用性的思维工具.思维导图运用图文并重的技巧,把各级主题的关系用相互隶属与相关的层级图表 ...

  2. 强化学习——基础概念

    强化学习--基础概念 一.强化学习问题的提出 奖励 Reward 环境 Environment 状态 State 二.智能体 Agent 策略 Policy 价值函数 Value function 模 ...

  3. 【强化学习】从强化学习基础概念开始

    在开始探索强化学习的诸多算法之前,我们先来了解一下它所涉及到的具体概念.这些概念将作为基石,一直陪伴着我们的学习之旅.为了能够将这些概念熟记在心,我们这一期做成强化学习概念小卡片,一张一张给大家展示和 ...

  4. PixiJS学习 基础概念

    介绍 简介 Pixi是一款速度极快的2D Sprite渲染引擎.那是什么意思?这意味着它可以帮助您显示,制作和管理交互式图形,以便使用JavaScript和其他HTML5技术轻松制作动画,游戏和一些其 ...

  5. 深度学习——深度学习基础概念

    摘要 本文将针对与深度学习的平台的这样的一个理解和实战这样的一个理解.这是一个系列的课程.我将一直更新有关于的paddle的开发和学习.Paddle包括众多方面.目标检测.文字识别.图像分类.图像分割 ...

  6. Oracle数据库学习基础

    1.Oracle简介 数据:data 数据库:database DB 数据库管理系统 database Management system DBMS 数据库系统 database system DBS ...

  7. 数据库的基础概念和代码例子(增删改查和其他操作-约束)

    前言必读 读者手册(必读)_云边的快乐猫的博客-CSDN博客 目录导航: 一概念解析 1.什么是数据库? 2.什么是数据库管理系统? 3.什么是SQL? 4.什么是关系型数据库? 5.SQL通用语句? ...

  8. qml基础学习 基础概念

    一.概括 学习qt已有2年多的时间,从qt4.7开始使用直到现在正在使用的qt5.6,基本都在windows机器上做开发.最近有意向看了下qt的qml部分,觉着还是挺不错的,毕竟可以做嵌入式移动端产品 ...

  9. WCF学习- 基础概念

    Windows Communication Foundation (WCF) 是用于构建面向服务的应用程序的框架.借助 WCF,可以将数据作为异步消息从一个服务终结点发送至另一个服务终结点.服务终结点 ...

最新文章

  1. 计算机图形学的核心领域,计算机图形学基础知识重点整理.pdf
  2. 读后感《我回阿里的29个月》
  3. python实践心得体会_“Python自然语言实践”——总结(一),实战
  4. linux suse11 nfs,suse11 nfsserver服务安装
  5. Node.js进程管理之Process模块
  6. 【C++】C++中的头文件(.h)—详解(1)
  7. 关于用FOMR提交编码的问题
  8. 防止***根据PHP中的错误信息爆路径
  9. handbrake下载太慢_handbrake使用教程
  10. 远程访问centos系统
  11. MATLAB数据线性度计算,非线性度的计算
  12. 全球与中国云计算数据中心IT资产处置(ITAD)市场深度研究分析报告
  13. 使用python-docx实现对word文档里的字符串、图片批量替换
  14. Pyecharts绘图笔记
  15. 作为老板,林纳斯·托瓦兹有多糟糕?
  16. 软件项目质量管理策略
  17. python爬虫爬取歌曲_python爬虫实战:爬取全站小说排行榜
  18. vue iview 输入银行卡号匹配开户行
  19. 逆向与反汇编实战(一)--PEiD分析复现
  20. pt100温度变送器,支持k型热电偶4-20mA输出全套方案资料

热门文章

  1. 自学软件测试,第一份外包工作8K,到现在大厂月薪30K*16薪
  2. 针对移动手机漏洞与安全支付现状分析
  3. 请访问豆瓣电影网站,爬取4~10部电影信息(电影名、导 演、演员、海报url链接,预报片视频链接),并结合GUI界面展现电影信息,并可以根据选择的电影名, 下载指定预告片视频到本地并显示预告片。GUI
  4. 软件工程工作量评估中的ILF,EIF,EI,EO,EQ术语解释
  5. VIVADO如何打开.ila波形文件
  6. arduino esp8266开发板下载出错解决方法
  7. Exception Processing Message 0xc0000005 Parameters
  8. LiveUpdate Adminstrator配置
  9. 使用MFC画线(初学)
  10. easyx库的介绍与使用