初识MySQL
一、数据库简介
- 什么是数据库?Database,用于存储数据(Data)
- 为什么要用数据库?
-
结构化
-
方便查询
-
保证数据的准确性,完整性,一致性
-
安全性
- 常见数据库
-
Oracle(大型数据库)
-
SQL Server(中文支持好,上手快)
-
MySQL(隶属于Oracle公司)
- MySQL简介
-
开源
-
有企业版[收费] 和社区版[免费]
-
运行速度快
-
成本低(有免费版)
-
容易使用
-
可移植性强(支持多平台)
二、MySQL下载安装
- 免安装绿色版本
- 安装版本
-
下载
-
安装(http://www.cnblogs.com/zlslch/p/6961598.html)
- 如何启动和关闭mysql数据库服务
- 查看MySQL的安装目录及结构
-
bin 可执行文件
-
include 头文件
-
lib 库文件
-
share 字符集、语言等信息
三、在命令行使用MySQL
- 在命令行使用mysql命令
-
将mysql命令配置为path环境变量
-
直接进入bin文件夹使用
- 输入命令进入mysql语法环境:mysql -uroot -p
- 输入quit可以退出mysql操作环境
- show databases; --查看所有数据库(注意语句以分号结束,不区分大小写)
- create database school;–创建数据库school
- use school;–切换当前使用的数据库为school
- dorp database school;–删除数据库school
- 我们的数据库配置文件和数据是存放在C:\ProgramData这个隐藏文件夹下的
- 数据库的类型
-
系统数据库
-
用户数据库
四、安装客户端工具
- 安装Navicat
- 连接上数据库
- 实现命令操作
- 通过代码新建数据库
五、数据库的基本存储结构
- 以Excel为例说明数据库中数据的存储结构
六、使用SQL语言建表
- 什么是SQL?(structure query language 结构化查询语言)
- SQL不仅仅用于查询,还有很多其他功能,它由一下几大部分组成:
-
DML 数据操纵语言(增删改查)
-
DDL 数据定义语言(建表、建库、删表、删库)
-
DQL 数据查询语言
-
DCL 数据控制语言(授权限)
- 建表语法create table
- 常用数据类型:
-
int
-
float
-
char
-
varchar
-
text
-
datetime
- 注释:
-
单行注释:#......
-
多行注释/*......*/
七、表的基本操作
- 通过视图编辑器往表里插入数据
- 查看表:show tables;
- 查看表的定义明细: desc tableName
- 删除表:drop table
八、常用的属性约束1
- 非空约束
- 主键约束
-
唯一
-
非空
-
通常每张表都要有,规范来的
-
可以修改,但一般不改主键的值
- 自动增长
九、常用的属性约束2
- 默认值约束
- 唯一约束
十、常用的属性约束3
- 外键约束
- 减少数据冗余(在excel中演示数据的冗余原因)
-
grade(gradeId,gradeName,createDate)
-
student(stuId,stuName,stuAge,gradeId)
- 拥有外键的表叫子表,被外键引用的表叫主表,主从关系
- 插入数据的时候要插入主表
- 删除数据的时候要先删除子表数据
十一、建表后的表修改操作
- 修改表名
-
alter table tabName rename to newTabName
- 添加字段
-
alter table tabName add stuName varchar(20) not null
- 修改字段
-
alter table tabName change stuName newStuName varchar(50) null
- 删除字段
-
alter table tabName drop stuName
- 添加主键约束
-
alter table tabName
-
add constraint pk_stuId primary key tabName(stuId)
- 添加外键约束
-
alter table tabName
-
add constraint fk_student_grade foreign key(gradeId)
-
references grade(gradeId)