数据库基础

数据库和数据库管理系统

  1. DB DATABASE 数据库 专门存储信息和维护信息的容器
  2. DBMS DATABASE MANGERANT SYSTEM 数据库管理系统 管理数据库的软件
  3. SQL 操作数据库的语言

数据库的发展阶段

  1. 手工管理阶段 应用程序管理数据、数据不保存、不共享、不具有独立性
  2. 文件管理阶段 文件系统管理数据、数据可长期保存、但共享性差、冗余度大、独立性差。
  3. 数据管理阶段 数据库管理系统、数据结构复杂、冗余小、易扩充、较高的独立性、统一数据控制。

数据库的特征:

  1. 数据结构化
  2. 数据共享
  3. 减少冗余
  4. 数据独立性

数据库的类型

  1. 网状型数据库 采用记录类型为节点的网状数据模型
  2. 层次型数据库 采用层次模型模拟现实世界中按层次组织起来的事物
  3. 关系型数据库(RDMBS) 采用二维表结构进行组内和表间数据的依赖关系
  • 关系数据库:一些相关的表和其他数据对象的集合。
  • 表由行和列组成(类似二维数组的结构):
  • 行 :包含一组记录,每行包含一条记录。
  • 列:包含一组命名的属性(也称字段)需要定义数据类型
  • 行和列的交叉:数据项(字段值)

常见的关系型数据库

  1. MySQL 瑞典 AB公司开发,目前属于Oracle公司旗下产品
  2. sqlserver 微软公司 Windows系统上运行
  3. oracle 甲骨文公司
  4. db2

MYSQL字符集(掌握)

  1. 字符 character 人类语言最小的表意符号,例如A、B等
  2. 字符编码 character encoding
  3. 给定一系列字符,对每一个字符赋值一个数值,用数值来代表对应的字符,这个数值就是字符的编码
  4. 字符集 character set:字符与编码组成的集合
  • utf-8
  • latin1
  • gbk
  1. 字符序 collation 同一字符集内字符之间的比较规则
  • 命名规范: 对应字符集名称开头 + 国家(或者 general)+ci/cs/bin
  • 以ci结尾的字符序表示大小写不敏感、以cs结尾的字符序表示大小写敏感、以bin结尾的字符序表示按编码值比较

存储引擎 (理解)

  1. 概念:如何存储数据、如何为存储数据建立索引、如何更新、查询数据等技术的实现方法。
  2. 数据库的存储引擎决定了表在计算机的存储方式
  3. Oracle、SqlServer只有一种存储引擎,mysql有多种存储引擎,mysql的核心是存储引擎
  4. 查询MySQL支持的存储引擎,SHOW ENGINES;
  5. oInnoDB:mysql 默认的,支持外键、事务
  6. MyISAM:不支持外键、事务,但是表可以被压缩、有可以修复和检查表的大多数工具
  7. MEMORY:存在内存中,访问速度快,但是一旦服务关闭,数据会丢失。
  8. set default_storage_engin=MyISAM;临时设置存储引擎命令
  9. 存储引擎的区别
    数据库基础

SQL脚本

  1. 一段SQL语句组成的文件,以.sql格式的文件
  2. 方便我们部署数据库

常用的数据库命令

  1. 以下命令在命令行中进行操作
  2. SELECT VERSION();查看数据库的版本号
  3. SHOW DATABSAES();查看数据库
  4. USER 数据库名;切换数据库
  5. user mysql;切换到mysql数据库下
  6. SHOW TABLES;显示数据库的表信息
  7. describe tablename;查看具体的表的结构
  8. SHOW VARIABLES LIKE ’ %CHAR%’ ;查看mysql数据库服务器和数据库字符集
  9. show table status from Mysql like’%slave%’;查看MySQL数据表的MySQL字符集
  10. show full columns from user; 查看MySQL数据列的MySQL字符集。