数据库: 高效的存储和处理数据的介质(磁盘和内存)
数据库(Database)是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。
简单来说是本身可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、截取、更新、删除等操作。
数据库分类: SQL标准化查询语言也是关系型数据库管理系统的标准化语言
基于存储介质的不同分为:关系型数据库(SQL)和非关系型数据库(NOSQL:Not Only SQL)
关系模型:一种所谓建立在关系上的模型。关系模型包含三个方面:
数据结构: 数据存储问题,二维表(有行有列)
操作指令集合:所有SQL语句
完整约束: 表内数据约束(字段与字段),表与表之间约束(外键约束)
>>数据库的设计思想:
表:表头(字段名:用来规定数据名字) 行 和数据部分组成(实际存储数据单元) 列
安装 dnf install mariadb-server -y
启动 systemctl restar mariadb
初始化 mysql_secure_installation 设置密码
防火墙永久允许 firewall-cmd --permanent --add-service=mysql
重新加载防火墙 firewall-cmd --reload
数据类型
varchar 可变长度字符类型
char 固定长度字符类型
Int 默认长度11
float 浮点数
Date 1999-01-01 time07:08:12
登录数据库
mysql -u用户名 -p密码 数据库名
例 mysql -uroot -p1234 wuhu
create database 数据库名 创建数据库
create table 表名 创建表
drop database 数据库名称; 删除数据库
drop table 表名 删除表
delete from 表名 where 条件a and 条件b 删除表中满足条件的数据
select * from 表名 查看表中数据
update 表名 set 字段名=字段值 where 条件 更新满足条件的字段值
desc student 显示student表中字段
alter table 表名 change column birth birthday data; 更改字段名
DCL(Data Control Language)数据库控制语言:是用来设置或更改数据库用户或角色权限的语句,包括(grant,revoke等)语句。这个比较少用到。
select user(); 查看当前数据库用户
grant select,update,insert,delete on 数据库名.表名 to 数据库用户; 给指定用户添加 对数据库下某表的 select,update,insert,delete 权限。
revoke select on数据库名.表名 from 数据库用户; 回收指定用户对某数据库下某表的 select 权限
示例
创建 create table student (number int(11),name varchar(6),age int,sex char (4),birth date);
1,select * from wuhu.students where age=20;
2,select * from wuhu.students where name="wangkai" and sex="nan";
3,update wuhu.students set brthday="1998/7/7" where name="mabo";
4,delete from wuhu.students where number=4;
5,select name from wuhu.students;
6,select name,age from wuhu.students where number=3;