0317问题

数据库

存储数据的仓库。

思考问题:为什么选择使用数据库存储数据?

计算机中存储数据的介质:
寄存器、缓存、内存(关机没了|退出程序)    时效性很短  快
磁盘   固话数据(持久化存储)  慢

数据库的存储是存储在磁盘上的。当然目前也是存在基于内存的数据库(当做缓存数据库 redis、mongodb)

思考问题:在没有数据库之前,我们如何存储数据?

大学:
存储各种学生、教师、课程等信息。 使用纸张存储。 

学生信息:将学生信息和对应的他所有的数据文件的位置信息 存储好,似乎也可以解决。

张三     逸夫楼2L 201教室 3-2-1 
文件存储这个数据:

student_location.txt
姓名  学号  作业位置信息 分数 专业
张三  20220201012 逸夫楼2L 201教室 3-2-1 优 计科
。。。。。。。。。。。。。。。。。。。。。。

思考问题:数据库有哪些优势?

大:
检索速度要快:
安全性要高、可靠:

数据库的交互

数据库中的数据的排列方式:

在一个数据库服务中,包含了N个库信息,每个库信息中包含N张表数据,具体数据信息是存储在表里面的。

每张表都是包含:(列 【列名称 + 列的类型】 + 行记录)

sql语法规则以及练习

编写SQL的注意事项:

1:  忽略大小写     建议小写(看起来方便)   	select * from emp; 
2:  所有sql语句编写的时候 统一使用`;` 结尾  。  
3: 为了格式好看,可以在编写过程中换行,但是一定要写;
	select 
	* 
	from 
	emp;
sql的分类

https://blog.csdn.net/eff666/article/details/52071101 数据库sql分类教程

https://www.sjkjc.com/mysql/lock-user-accounts/ SQL教程

https://www.runoob.com/mysql/mysql-data-types.html mysql教程

http://c.biancheng.net/mysql/function/ mysql函数教程

数据查询语言(DQL) 查询 表中的数据

数据操纵语言(DML) 操作 针对与数据的 修改 删除 和添加

数据定义语言(DDL) 针对与库和表的操作

数据控制语言(DCL) 针对用户的操作 权限

-- 创建用户 
> create user '用户名' identified by '密码';
-- 给指定用户授权 *代表所有  *.*代表所有库的所有所有表  all代表所有权限
> grant all on *.* to '用户名';
-- 给指定用户撤销权限 *代表所有  *.*代表所有库的所有所有表  all代表所有权限
> revoke all on *.* from '用户名';
-- 给用户加锁
> alter user '用户名' account lock; -- 加锁
> alter user '用户名' account unlock; --解锁
-- 删除指定用户
> drop user '用户名';
-- 查询所有的库信息
> show databases;
-- 切换库
> use 数据库名称;
-- 查看所有表
> show tables;
-- 查看当前指定的表的表结构
> desc 表名;
-- 查看当前表的所有数据记录
> select * from 表名;
-- 创建表
> create table 表名 (列名1 列类型1,列名2 列类型2,列名3 列类型3....)
-- 修改前缀: alter tbale 表名 
-- 给当前表添加一列
> alter table t_user add column score int;
-- 修改列名称和列类型
> alter table t_user change 旧列名 新列名 列类型
数据库中的数据类型
  • 数值

  • 整数

  • 在计算机中最小的存储单位是位 进位方式如下

1b  1位  描述两种状态 分别是 [0,1] 
1B 1个字节 = 8b  = 2^8 状态  描述的数据量是 256种  如果描述整数 [-128,127] 
1KB = 1024B  1个千字节

1MB = 2014KB 1个兆字节 1GB 吉字节 1TB 1PB 1EP NBNBNBNB


* 所有的语言体系中:

* 强类型语言: SQL   所有的数据和变量都是具备类型
* 弱类型语言: 数据有类型,变量无类型
* 在SQL中,将数据类型做了很合理化的设置。 `tini_int、 int、bit_int`等

* 小数

* float、double(浮点数)
* decimal 定点数
  • 字符串

  • char (定长 时间换空间) varchar(变长 空间换时间)

  • text(长文本) blob (二进制)

  • 日期

  • date 存储日期 年月日

  • time 存储时间

  • timestamp 时间戳 年月日 时分秒 时区

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值