MySQL 必知必会 第1~3章 笔记
了解 SQL
数据库基础
什么是数据库
- 数据库(database)保存有组织的数据的容器(通常是一个文件或一组文件)
- 区分数据库与数据库软件,数据库软件应称为 DBMS ,数据库是通过 DBMS 创建和操纵的容器
表
- 表(table):某种特定类型数据的结构化清单
- 模式(schema):关于数据库和表的布局及特性的信息
列和数据类型
- 列(column):表中的一个字段,所有表都是由一个或多个列组成的
- 数据类型(datatype):所容许的数据的类型,每个表列都有相应的数据类型,它限制(或容许)该列中存储的数据
行
- 行(row):表的一个记录(record)
主键
- 主键(primary key):一列(或一组列),其值能够唯一区分表中每个行
MySQL 强制实施:
- 任意两行不具有相同的主键值
- 每行必须有一个主键值(主键列不允许 NULL 值)
可以多个列作为主键,要求所有列值的组合唯一。
一些好习惯:
- 不更新主键列中的值
- 不重用主键列中的值
- 不在主键列中使用可能会更改的值
什么是 SQL
- SQL(Structured Query Language)
MySQL 简介
什么是 MySQL
- MySQL 是一种 DBMS
客户机-服务器软件
- 服务器部分:负责所有数据访问和处理,运行在数据库服务器上
- 客户机部分:与用户打交道的软件
版本
- 版本 4 —— InnoDB 引擎,增加事务处理、并、改进全文本搜索等
- 版本 4.1 —— 对函数库、子查询、集成帮助等的重要增加
- 版本 5 —— 存储过程、触发器、游标、视图等
使用 MySQL
- 使用
crashcourse
数据库:
USE crashcourse;
- 显示现有的数据库:
SHOW DATABASES;
- 获得数据库内的表的列表:
SHOW TABLES;
- 显示表列:
SHOW COLUMNS FROM customers;
SHOW COLUMNS
要求给一个表名(FROM customers
),对每个字段返回一行,行中包含字段名、数据类型、是否允许 NULL、键信息、默认值及其他信息。DESCRIBE
语句可以快捷地表示SHOW COLUMNS FROM
其他语句:
SHOW STATUS
显示广泛地服务器状态信息SHOW CREATE DATABASE
显示创建特定数据库的语句SHOW CREATE TABLE
显示创建表的语句SHOW GRANTS
显示授予用户的安全权限SHOW ERRORS
SHOW WARNINGS
显示错误或警告