数据库
数据库管理系统分两类(软件,能帮助我们高效的使用数据库)
1关系型数据库
mysql (中小企业)/ sql server(学校学校教学) / oracle(银行\证券等)
2非关系型数据库
redis
数据库中的数据类型有四类:
1数字型(int float)
2字符串
3时间(year,date,time,datetime,timestamp
4枚举enum和集合set(枚举单选,集合多选去重)
常见的数据库存储引擎有3种:
方式1:myisam 存在硬板上,存三个文件,支持表级锁,查询速度快
方式2:innodb 存在硬板上,存二个文件,支持行级锁/事务/外键
方式3:memory 存在内存中,存一个文件,数据容易丢失,但读写速度快
char 和 varchar的区别:
char----------能表示的长度小,定长字符串,浪费空间,效率高
varchar---------能表示的长度达,边长字符串,节省空间,效率低
数据类型的约束:
1 设置整形无符号 int unsigned
2 设置默认值 default
3是否可以为空 not null
4是否唯一 unique
5自增 auto_increment
6 主键 primary key
7 外建 foreign key
8唯一/联合唯一 not null 非空 + unique 唯一 == primary key
9联合主键 : 约束多个字段各自不能为空,并且联合唯一
10外键
数据库的简单操作:
一
mysqld install
mysqld.exe install 要安装mysql的server端
net start mysql 启动server端
mysql -uroot -p 启动client端
如何重启server?
net stop mysql
net start mysql
client端的启动
c://>mysql -uroot 表示没有密码的情况下用root用户登录
c://>mysql -uroot -p 表示使用密码登录
Enter password:输入密码,如果没有密码直接回车
命令行:
select user(); 查看当前用户
set password = password('123');给当前用户设置密码
;在mysqlz中是结束符
查看当前的所有数据库
show databases;
root用户相当于管理员用户
其他的程序员想要使用数据库来存储项目数据,不能给他权限最高的管理员用户
可以创建用户 并且给用户授权
create user 'eva@192.168.16.%';
create user 'eva@192.168.16.%' identified by '123';
既可以给一个已经存在的用户授权,也可以给一个不存在的用户创建并授权
grant 权利 on 数据库名.表名 to '用户名@ip地址'
grant 权利 on 数据库名.表名 to '用户名@ip地址' identified by '123';
权利 : SELECT INSERT UPDATE DELETE ALL
查看 写入 修改 删除 所有权限