数据库
数据库的作用
存储大量数据,方便检索和访问
保持数据信息的一致、完整
共享和安全
通过组合分析,产生新的有用信息
数据库的分类
按照数据(多个数据是否存在联系)关系进行划分
①关系型数据库
用于存储存在一定关联的数据库,存储形式类似于表,存储的数据拥有统一的类型与名称
②非关系型数据库
存储数据以一定形式进行存储,数据与数据之间没有关联关系,类似于map
MongDB
Redis
数据存储的方式
数据库就是“数据”的“仓库”
数据库中包含表、关系以及操作对象
数据存放在表中
所有数据存储在相应的表中,所有表存储在相应的库中
在实际开发过程中,我们会将当前应用所有使用的数据存储在一个库中(每个库负责一个应用)
在库中对所有数据进行分类使用不同的表进行数据的存储,在进行使用时选择库表之后可以快速的进行数据的获取
数据库引擎
事务:提交、回滚等
InnoDB:是事务性数据库的首选引擎,MySQL的默认引擎
MyISAM:不支持事务,拥有较高的插入和查询速度
Memory
Archive
Mysql
Mysql安装
1、使用cmd验证mysql是否已经安装
2、打开安装程序
3、勾选协议点击next
4、选择自定义安装指定安装路径
5、选择安装数据库与管理软件
6、选择进行配置安装
7、选择安装数据库用途
8、选择是否生成默认库
9、选择数据存储位置
10、选择数据库同时连接数上限
11、记录mysql使用端口号并将端口加入防火墙校验
验证是否安装成功并进行连接
mysql -h连接主机ip -u账号 -p密码
Mysql 的删除
(1)使用安装文件删除
1、关闭mysql服务
cmd命令输入service.msc打开服务管理,关闭mysql服务
2、正常情况下可以使用安装文件进行删除
如果没有提前关闭服务那么需要手动停止服务使用sc delete 服务名进行手动删除
3、删除mysql环境变量中path设置的环境变量
(2)正常删除
1、关闭mysql服务
cmd命令输入service.msc打开服务管理,停止mysql服务
2、打开控制面板找到mysql卸载
如果卸载前忘记关闭服务,那么卸载后关闭服务之后手动卸载
3、删除mysql文件
4、如果想彻底删除mysql,打开注册表搜索mysql删除所有与mysql相关的注册表信息(建议百度指定删除)
mysql -h服务器地址 -u账号 -p密码 数据库连接指令
show databases; 展示当前所有数据库
use 数据库名; 连接使用指定数据库
SQL
Structured Query Language:结构化查询语言
是各大数据库厂商为了进行数据库数据的管理而达成的统一
不区分大小写,所有语句以;结束
DDL(数据定义语言) 用来建立数据库、数据库对象和定义表的列
DML(数据操作语言) 插入、删除和修改数据库中的数据
DQL(数据查询语言) 用来查询数据库中的数据
DCL(数据控制语言)
DDL
数据库定义语言,用于建库建表以及进行库表操作
基本语法
创建数据库
create database 数据库名;
以默认编码创建指定数据库
查看所有数据库
show databases;
查看指定数据库建库语句
show create database 数据库名;
删除数据库
drop database 数据库名;
存储数据类型
在实际开发过程中对于数值类型使用int 、double进行存储,字符串使用varchar进行存储,日期根据实际需求进行存储一般使用datatime与timestamp
建表语句
create table 表名(
列名 类数据类型(长度) 约束1 约束2,
列名 类数据类型(长度) 约束1 约束2
)
查看表详情
desc 表名
修改表名
rename table 表名 to 新表名
为表新增列
修改已有字段数据类型等属性
删除已有字段
alter table 表名 drop 删除字段名
删除表
drop table 表名
主键约束primary key
primary key 设置字段非空不允许重复
删除主键约束 alter table 表名 drop primary key;
添加主键约束 alter table 表名 add primary key(添加约束列);
修改主键约束 alter table 表名 modify id int primary key;
最少性 尽量选择单个键作为主键
稳定性 尽量选择数值更新少的列作为主键
数据添加不允许重复
添加唯一约束 alter table 表名 add unique (添加约束列);
修改唯一约束 alter table 表名 modify 修改约束列 varchar(25) unique;
删除约束
非空约束
not null 指定字段不允许进行null存储
增加非空约束 alter table 表名modify 约束字段 varchar(2) not null;
取消非空约束 alter table 表名 modify 约束字段varchar(2) null;
取消非空约束,增加默认值 alter table 表名 modify 约束字段varchar(2) ;
默认值约束default
当添加数据数没有添加数据使用默认值进行添加
alter table 表名 modify 约束字段varchar(2) default 默认值;
自增约束auto_increment
设置自增ID
CREATE TABLE empautoinc( ID INT PRIMARY KEY AUTO_INCREMENT ) AUTO_INCREMENT = 100 ; --(设置自增ID从100开始)
修改mysql表的字段为自增长 alter table newcar change id id int(11) not null AUTO_INCREMENT;
获取自动增长
删除自增 Alter table tb change id id int(10);//删除自增长
-- 主表
create table temp( id int primary key, name varchar(20) );
-- 副表
create table temp2( id int, name varchar(20), classes_id int, foreign key(id) references temp(id) );
删除外键约束
alter table student drop foreign key student_id;
增加外键约束
alter table student add foreign key( classes_number) references classes(number);
搜索修改数据库字符集命令并进行字符集修改
搜索修改账号密码命令并进行密码修改(root->123456 123456->root)
搜索修改账号允许远程连接命令并将账号修改
熟悉建库建表语法约束,之后使用开发连接工具进行创建修改
注意:本文归作者所有,未经作者允许,不得转载