作者:先人掌 | 来源:互联网 | 2023-09-18 16:41
今日内容概要主体:数据库(入门核心)数据存取演变史数据库软件应用史数据库的本质数据库的分类MySQL数据库基本使用系统服务制作基本SQL语句今日内容详细数据存取演变史1.文本文件文
文章目录[隐藏]
- 今日内容概要
- 今日内容详细
- 数据存取演变史
- 数据库软件应用史
- 数据库的本质
- 数据库的分类
- MySQL简介
- 基本使用
- 系统服务制作
- 密码相关操作
- SQL 与 NOSQL
- 数据库重要概念(帮助理解 不完全准确)
- 针对库的基本SQL语句
- 针对表的基本SQL语句
- 针对记录的基本SQL语句
今日内容概要
主体:数据库(入门核心)
- 数据存取演变史
- 数据库软件应用史
- 数据库的本质
- 数据库的分类
- MySQL数据库
- 基本使用
- 系统服务制作
- 基本SQL语句
今日内容详细
数据存取演变史
- 1.文本文件
- 文件存取路径不一致:C:/a.txt D:/b.txt E:/user/c.txt
- 数据格式也不一致:jason|123 tony$123
- 2.软件开发目录规范
- 规定了数据文件的大致存取位置:db文件夹下
- 但是数据格式还做不到统计统一:统一用了json文件 但是内部键值对不同
- 3.数据库服务
- 统一了存取位置 也统一了数据格式(做到了完全统一 兼容性也做到了最好)
数据库软件应用史
-
1.单机游戏
- 不同计算机上的相同程序 数据无法做到共享
- 只能基于本机计算机上面去存档 数据库服务只能在本地完成
-
2.网络游戏
-
拓展:
- 远程数据库服务
- 数据库集群
- 问题 1. 数据安全性问题
- 问题 2. 服务器负载问题
- 解决方式:
数据库的本质
-
数据库在不同角度下描述的意思:
-
1.在底层原理的角度:
-
2.在现实应用的角度
-
在不做特殊说明的情况下:
- 提起数据库 一般都在指数据库软件
- 数据库软件本质是一款CS架构的应用程序
- 言外之意所有的程序员理论上都可以编写>>>: 包括市面上已经有很多的数据库软件
数据库的分类
-
1.关系型数据库
-
(1)数据的组织方式有明确的表结构
- 表内有数据标注 类似:id name password...
- 关系型数据库存取数据的方式可以看成是表格
-
(2)表与表之间可以建立数据库层面的关系
- 用户表 房屋表
- 只要获取到用户表的一条数据 就可以获取到与之相关的其他表数据
-
(3)关系型数据库软件:
- MySQL、PostgreSQL、MariaDB、Oracle、sqlite、db2、sql server
- MySQL: 开源 使用最为广泛 数据库学习必学
- PostgreSQL: 开源 支持二次开发
- MariaDB: 开源 与MySQL是同一个作者 用法也极其相似
- Oracle: 收费 安全性极高 主要用于银行及各大重要机关
- sqlite: 小型数据库 主要用于本地测试(django框架自带该数据库)
-
2.非关系型数据库
MySQL简介
基本使用
- 1.先启动服务端
- 2.查找MySQL文件位置
- 3.再次开启新的cmd窗口
- 4.用户名和密码登录
- mysql -u用户名 -q密码
- mysql默认管理员账号 用户名是root 密码是空
- 5.退出:命令
系统服务制作
1.如何解决每次都需要切换路径查找文件的缺陷
添加环境变量
2.将mysql服务端制作成系统服务(随着计算机的开启而启动 关闭而结束)
1.以管理员身份打开cmd窗口
2.执行系统服务命令
mysqld --install
3.启动服务端
1.右键直接点击启动
2.命令启动
net start mysql
"""
1.查看系统服务的命令
services.msc
2.关闭mysql服务端
net stop mysql
3.移除系统服务
1.先确保服务已经关闭
2.执行移除命令
mysqld --remove
"""
密码相关操作
- 1.修改密码:
- mysqladmin命令
- 通用方式:直接在cmd窗口中写
- mysqladmin -u用户名 -p原密码 password 新密码
- 第一次修改:
- mysqladmin -uroot -p -password 123
- 第二次修改:
- mysqladmin -uroot -p123 -password 666
- 偏门方法:需要先登录>>>:set password=PASSWORD(新密码);
- 2.忘记密码:
- (1) 直接重新安装或者拷贝对应文件
- (2) 先关闭服务端 然后以不需要校验用户身份的方式去启动 在修改 最后再安装 正常方式启动
- 1.net stop mysql(先退出服务端)
- 2.mysql --skip-grant-tables(用这种方式去启动 (不校验用户密码直接启动(比较危险 )))
- 3.mysql -uroot -p(不关闭第2步窗口 在开一个cmd窗口 输入命令进入 )
- 4.update mysql.user set password=password(123) where Host='localhost' and User='root';(修改密码)
- 5.net stop mysql(关闭退出cmd窗口)
- 6.net start mysql(然后再正常的启动就可以了)
SQL 与 NOSQL
数据库重要概念(帮助理解 不完全准确)
针对库的基本SQL语句
方法 |
语句 |
增 |
cretae database 库名; |
删 |
drop database 库名; |
改 |
alter database 库名 charset='gbk'; |
查 |
show databases; 或者 show create database 库名; |
针对表的基本SQL语句
-
1.查看当前所在的库名:
- selcet database();
- 如果没有在任何的库下 默认会显示NULL(意思现在所在位置为data下的页面)
- 切换库:use 库名;
-
方法 |
语句 |
增 |
create table 表名(字段名 字段类型 ,字段名字 段类型,字段名 字段类型 ); |
删 |
drop table 表名; |
改 |
alter table 旧表名 rename 新表名; |
查 |
show tables; show create table 表名; describe 表名; desc 表名; |
针对记录的基本SQL语句
方法 |
语句 |
增 |
insert into 表名 values(数据,数据); insert into 表名 values(数据,数据),(数据,数据),(数据,数据); |
删 |
delete from 表名; # 删除表中的所有数据 delete from 表名 where 筛选条件; # 按照条件删除数据 |
改 |
update 表名 set 字段名=新数据 where 筛选条件; |
查 |
select * from 表名; # 表示查看所有的字段 select 字段1,字段2, from 表名; # 选择查看指定字段信息 |