数据库
信息储存工具你知道有哪些?
磁盘、软盘、U盘
随着计算机软、硬件的高速发展,在20实际60年代,数据库技术应运而生;并在70年代得到迅速发展和广泛引用。
数据 Data
数据库 Database :
数据库管理系统 DBMS :
位于用户操作系统之间的一层数据管理软件
DBMS用途:
科学地组织和存储数据、高效地获取和维护数据
数据库系统 DBS
数据:
数据是数据库中存储的基本对象
数据的定义
描述客观事物的符号记录
数据的种类
数字、文字、图形、图像、声音等
数据库的工作原理
应用程序---->发送请求------》服务器-----》访问数据库------》数据库
数据库------>返回数据------》服务器-------》响应请求并返回数据------》应用程序
MySQL数据库简介
Structured Query Language :结构化查询语言
结构化查询语言可分为六部分:
数据库定义语言(DDL: create、alter、drop)
数据库查询语言(DQL:insert、updata、delete)
数据库操纵语言(DML:select)
数据库控制语言(DCL:grant(授权)、revoke(回收))
MySQL命令
1、启动
show databases:所有数据库
mysql -u root -p 登录数据库
net start mysql56 启动服务
user 数据库名
2、查看数据库
show tables;
select * from user\G;
select user,host,password from user;
status; 状态信息
3、创建用户1
mysql -u 用户名 -p -h -P
user password host port
create user 用户名称 identified by ‘密码’:
ceshi@192.168.0.2
ceshi@192.168.1.%
默认用户为:root ,用户名为mysql数据库user表中user,host字段的组合,如果host字段值为%
show tables; 查看指定数据库下边所有数据表
show database; 查看所有数据库
4、授限
grant 授权 on 范围 to 用户 [ with grant option]
如果在授权语句中出现with grant option 代表被授权的用户可以将自己的权限授予被别人
创建用户2
创建用户同时分配权限
grant 授权 on 范围 to 用户 identified by ‘密码’;
grant all on mysql.* to a identified by ‘1234’
show grants for ceshi;
grant select(host) on mysql.user to c:
sho
服务器级别
数据库(具体的某一个数据库)
列
表()
use infomation_sch
desc tables:查看这个表的定义
5、回收
revoke 权限 on 范围 to 用户
6、刷新全新机制
flush privileges;
7、更改密码
A、更改指定用户密码
set password for c=password(‘123’)
B、更改自己的登录密码
set password=password(‘111’);
8、删除用户
drop user 用户名;
9、查看用户当前权限
语法:show grants for 用户名;
MySQL建库和建表
两个模式:严格模式和非严格模式
mysql当前及以前的数据库存储引擎
myisam—myus
innodb -----ib
MYI:索引文件
MYD:data 数据文件
创建数据库:
create database 数据库名
操作:
1、创建数据库schollDB
2、创建教室信息表Techers
包含:教师编号、如:00001,0002…
教师姓名 name
教师出生日期 time
教师性别 gender
教师教龄 age
教师住址 address
教师住址及所在的邮政编码 postal
创建数据库语法:create databse 数据库名
建表语法:create table 表名
MySQL数据类型:
1、数值型
1.1整型(tinyint、smallint、mediumint、int、bigint)
1.2浮点(float、double )
1.3定点型(decimal)
2、字符型
char 、yarchar、blob、text、enum、set
3、日期和时间类型
date 、time、datetime、timestamp、year
zerofill属性,在数字长度不够的数据前面填充0,以达到设定的长度
注释:
多行注释 /**/
单行注释#
– 单行注释
插入语句语法
insert into 表名[(字段1,字段2,。。。)]values (值1,值2);
注意:
1、如果针对表中所有添加数据,可省略字段列表
2、字段列表不是表中所有字段时,非空无默认值字段必须出现
3、值列表须与字段列表一一对应(数量,数据类型)
4、对于字段列表中允许为空字段,值可使用null或default替代用户未指定情况
5、对于字段列表中有默认值字段,值可使用default替代用户未指定情况
强调:针对字符、日期和时间类型,数据值使用英文单引号括起来
更新语句语法
update 表名 set 字段1=值1 字段2=值2 [where 条件表达式]
任务1:将所有老师的教龄(tWokAge)加1
任务2:将张三老师的教龄(tWorkAge)加1
任务3:将所有老师的教龄(tworkAge)加1切备注清空
课外任务:
char 与varchar的区别
1、char类型的长度是固定的,varchar的长度是可变的。
即char类型是规定多少字长则必须存储多少字长,超过的长度的字段则只能截取出对应的长度进行存储, 相对于要求字长长度不够的字段则用空格补齐。
而varchar类型则是只要在规定字长之内,有多少存多少,无需补齐;超出的部分和char一样,舍去即可。
2.char类型的效率比varchar的效率稍高
3、 存储容量不同
对于char类型来说,最多只能存放的字符个数为255,和编码无关。
varchar最多能存放65532个字符。VARCHAR的最大有效长度由最大行大小和使用的字符集来确定。整体最大长度是65,532字节。
datetime(日期时间)与timestamp(时间戳)的区别
1、两者所能存储的时间范围不一样
timestamp所能存储的时间范围为:‘1970-01-01 00:00:01.000000’ 到 ‘2038-01-19 03:14:07.999999’。
datetime所能存储的时间范围为:‘1000-01-01 00:00:00.000000’ 到 ‘9999-12-31 23:59:59.999999’。
2、默认值不同
DATETIME的默认值为null;TIMESTAMP的字段默认不为空(not null),默认值为当前时间
3、储存空间不一样
DATETIME使用8字节的存储空间,TIMESTAMP的存储空间为4字节。因此,TIMESTAMP比DATETIME的空间利用率更高
datetime和timestamp的区别 - 情陌人灬已不在 - 博客园 https://www.cnblogs.com/deityjian/p/11452295.html
分享1、MySQL的存储引擎
一、InnoDB
这是MySQL 5.5或更高版本的默认存储引擎。它提供了事务安全(ACID兼容)表,支持外键引用完整性约束。它支持提交、回滚和紧急恢复功能来保护数据。它还支持行级锁定。当在多用户环境中使用时,它的“一致非锁定读取”提高了性能。它将数据存储在集群索引中,从而减少了基于主键的查询的I/O。
二、MyISAM
该存储引擎管理非事务性表,提供高速存储和检索,支持全文搜索。
三、MEMORY
提供内存中的表,以前称为堆。它在RAM中处理所有数据,以便比在磁盘上存储数据更快地访问。用于快速查找引用和其他相同的数据。
四、MERGE
将多个类似的MyISAM表分组为一个表,可以处理非事务性表,默认情况下包括这些表。
五、EXAMPLE
你可以使用此引擎创建表,但不能存储或获取数据。这样做的目的是教开发人员如何编写新的存储引擎。
六、ARCHIVE
用于存储大量数据,不支持索引。
七、CSV
在文本文件中以逗号分隔值格式存储数据。
八、BLACKHOLE
受要存储的数据,但始终返回空。
九、FEDERATED
将数据存储在远程数据库中。
mysql的存储引擎 - 陌然浅笑 - 博客园 https://www.cnblogs.com/orange-time/p/10552801.html
分享2、MySQL忘记密码怎么办
Mysql密码忘记怎么修改?_没有别人学习好并不可怕,可怕的是你还没有别人努力-CSDN博客 https://blog.csdn.net/kaifaxiaoliu/article/details/79774265
分享2、ER图
E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。
实体-联系图(ER图)_star_of_science的博客-CSDN博客 https://blog.csdn.net/star_of_science/article/details/83063165
https://www.cnblogs.com/zhoubaojian/articles/7866292.html
时间不早了,晚安!