一、数据库入门及表的创建

MySQL

一、数据库入门及表的创建

1、数据库的概念

1.数据(data)

  • 数据是对客观事物的符号表示
  • 数据是数据库中存储的基本对象
  • 数据的种类包括文字、图形、图像、声音

2.数据库(DB:DataBase)

  1. 数据库的定义
    • 数据库是按照数据结构来组织、存储和管理数据的仓库
    • 数据库是存储在一起的相关数据的集合
  2. 数据库的发展史
    • 人工管理阶段
    • 文件系统阶段
    • 数据库系统阶段(关系型数据库)
    • 高级数据库阶段(关系-对象型数据库)
  3. 数据库的类型
    • 纯文本数据库
    • 关系数据库(当前主流)
  4. 数据库的优点
    • 数据按一定的数据模型组织、描述和存储
    • 可为各种用户共享
    • 节省存储空间
    • 易扩展,编写有关数据库应用程序
  5. 数据库管理系统(DBMS)
    • 操纵和管理数据库的大型软件,用于建立、使用和维护数据库
    • 关系型数据库管理系统,简称RDBMS,R指relation
    • DBMS对数据库进行统一的管理和控制,以保证数据库的安全性和完整性
  6. 数据库系统(DBS)
    • 一个实际可运行的存储、维护和应用系统提供数据的软件系统数据库系统构成
  7. 时下流行的数据库
    • Oracle(Oracle)
    • MySQL(Oracle)
    • SQL Server(MS)
    • DB2(IBM)

2、MySQL数据库的介绍

  1. MySQL是一个小型关系型数据库管理系统
    • 表头(header):每一列表示的名称
    • 列(row):具有相同数据类型的数据的集合
    • 行(col):每一行用来描述某个人/物的具体信息
    • 值(value):行的具体信息,每个值必须与该列的数据类型相同
    • 键(key):表中用来识别某个特定的人/物的方法,键的值在当前列中具有唯一性
  2. MySQL是一个单进程多线程、支持多用户、基于客户机/服务器(Client/Server简称C/S)的关系数据库管理系统
    • 体积小,便于安装
    • 性能高效
    • 跨平台支持
    • 简单易用
    • 开源免费
    • 支持多用户

3、MySQL的数据

  1. MySQL有三大数据类型:数字、日期/时间、字符串
    • 数字类型
      • 整数:tinyint、smallint、mediumint、int、bigint
      • 浮点数:float、double、real、decimal
    • 日期和时间
      • date、time、datetime、timestamp、year
    • 字符串类型(单引号)
      • 字符串:char、varchar
      • 文本:tinytext、text、mediumtext、longtext
      • 二进制(存图片、音频):tinyblob、blob、mediumblob、longblob
  2. MySQL支持两种复合数据类型
    • enum枚举类型:类似于单选按钮,最多65535元素
    • set集合类型:类似于复选框功能,最多64个元素
  3. SQL(Structured Query Language:结构化查询语言)
    • SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。
    • 在使用时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的
  4. SQL语法组成
    • DML(Data Manipulation Language:数据操作语言):查询、插入、删除、修改数据库中的数据
    • DCL(Data Control Language:数据控制语言):控制存取许可、存取权限等
    • DDL(Data Definition Language:数据定义语言):建立数据库、数据库对象和定义其列
    • 功能函数:日期函数、数学函数、字符函数、系统函数等

4、创建表及约束

  1. 约束(constraint)的作用
    • 约束的全称是约束条件,也称完整性约束条件。
  2. 约束的类型
    • 非空约束(not null),简称NN
    • 唯一性约束(unique),简称UK
    • 主键约束(primary key),简称PK
    • 外键约束(foreign key),简称FK
  3. 主键约束
    • 主键应是对系统无意义的数据
    • 永远也不要更新主键,让主键除了唯一标识一行之外,再无其他的用途
    • 主键不应包含动态变化的数据,如时间戳
    • 主键应自动生成,不要人为干预,以免使它带有除了唯一标识一行以外的意义
    • 主键尽量建立在单列上
  4. 完整性约束
    • Auto_Increment
  5. 外键约束
    • 外键约束条件定义在两个表的字段或一个表的两个字段上,用于保证相关两个字段的关系。

猜你喜欢

转载自www.cnblogs.com/Gavin520/p/10651288.html
今日推荐