环境搭建:
1.下载:MySQL :: Download MySQL Community Server
2.配置mysql环境变量:
系统环境变量path D:\ProgramFiles\mysql-8.0.20-winx64\bin
3.mysql初始化和启动:
1)以管理员身份运行cmd
2)cd到mysql的安装目录
3)初始化mysql数据库
作用:初始化数据库,并设置默认root密码为空
命令:mysqld --initialize-insecure
命令执行后,在mysql安装目录会生成一个data目录
4.为Windows系统安装mysql服务
命令:mysqlld install
作用:为Windows系统安装mysql服务,默认服务名为:mysql
输入sc query mysql,查看一下名为mysql的服务
5.启动SQL服务
命令:net start mysql
作用:启动MySQL服务,注意此时的“mysql”表示服务名 到此mysql8安装完成
6.删除服务命令:sc delete mysql 卸载时使用
7.为root设置密码
上面已经将root账号设置为空,可以使用root用户直接登录,然后修改密码。
1)命令:LTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '此处为设置密码处';
作用:设置密码
2)命令:FLUSH PRIVILEGES;
作用:刷新权限
8.命令行连接mysql
登录:mysql [-hlocalhost -P3306](本机可省略) -uroot -p(可以直接写密码,不能有空格)
-h:主机名
-P:端口号
-u:用户名
-p:密码
退出:exit
为什么要学习数据库?
答:(1).实现数据持久化到本地;
(2).使用完整的管理系统统一管理,可以实现结构化查询,方便管理;
数据库的定义:
数据库(DataBase)为了方便数据的存储和管理,它将数据按照特定的 规则存储在磁盘上,
就是一个存储数据的仓库。通过数据库管理系统,可 以有效的组织和管理存储在数据库中的数据。
DB
:数据库(
DataBase
)
存储数据的容器,它保存了一系列有组织的数据。
DBMS
:数据库管理系统(
DataBase Management System
)
又称为数据库软件或数据库产品,用于创建或管理
DB
。
SQL
:结构化查询语言(
Structure Query Language
)
用于和数据库通信的语言,不是某个数据库软件特有的,而是几乎所有的 主流数据 库软件通用的语言。
一.DDL
数据(结构)定义语言DDL(Data Definition Language),是用于创建和修改数据库表结构的语言。
常用的语句:
create ,alter,drop,rename
1. 先要定义库及表结构
1)创建数据库
CREATE DATABASE
数据库名
CHARSET 字符集
2)删除数据库
3)
修改数据库字符集
ALTER DATABASE
数据库名
CHARSET 字符集;
4)修改表名
RENAME TABLE 表名1 to 表名2
5)复制表结构,数据备份
CREATE TABLE 表名1 LIKE 表名2
2. 数据库中可以创建多个表,表具有唯一性。
1)创建表的步骤:
① 确定表名;
② 确定列名(存储哪些信息); 例如:学号,姓名
③ 确定字段(列)的数据类型和长度;
④ 有哪些约束; 例如:有些数据不能重复
2)设计表(数据类型)
char(
n
) 长度为
n
的定长字符串;
varchar(n) 最大长度为
n
的可变长字符串;
date 日期, 包含年月日;
datetime 年月日 时分秒;
① 整数: 类型 字节
TINYINT 1
SMALLINT 2
MEDIUMINT 3
INT 4
BIGINT 8
② 浮点: FLOAT 4
DOUBLE 8
数据类型(M,D):M:精度,数据总长度
D:标度,小数点后的长度
eg: FLOAT(6,2)
③ BLOB:二进制大对象,可容纳值的最大长度不同,可用于存储图片
④ TEXT字符串:大容量字符串
3.主键:一张表中代表唯一的一条记录,不能为空,不能重复。
主键自动增长:
AUTO_INCREMENT 必须是整数类型才可以设置自动增长
eg: NO INT PRIMARY KEY AUTO_INCREMENT COMMENT "学号主键",
创建表,并为表添加约束
主键约束: 每张表可以添加一个主键约束,不能为空,不能重复,可以表示表中唯一的一条记录
不能为空约束: 值不能为空 主键一张表只能有一个 不能为空,不能重复可以是多个列
唯一约束: 值不能重复
检查约束(自定义条件)
外键约束