一.基础知识
1、什么是数据库
什么是数据库? 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。 RDBMS 即关系数据库管理系统(Relational Database Management System) 关系型数据库: mysql oracle sqlserver ... 1、数据以表格的形式出现 2、每行为各种记录名称 3、每列为记录名称所对应的数据域 4、许多的行和列组成一张表 5、若干的表组成database(数据库) 非关系型数据库: redis , elasticsearch, mongedb... no-sql 1、没有sql语句 2、不仅仅只有sql语句 一般非关系数据库的存储形式不再以表格为主。json样式来进行存储,也有以二进制的形式来进行存储。
2、什么是数据表
数据表: 表是数据的矩阵。在一个数据库中的表看起来像一个简单的电子表格。 列: 一列(数据元素) 包含了相同类型的数据, 例如邮政编码的数据。 行:一行(=元组,或记录)是一组相关的数据,例如一条用户订阅的数据。 冗余:存储多倍数据,冗余降低了性能,但提高了数据的安全性。要允许有一定的数据冗余。 主键:主键是唯一的。你可以使用主键来查询数据。主键表示了不同的记录。 注意: 一张表中不允许出现两条一模一样的数据,如果正巧有两条记录的信息是一模一样,这时就用主键编号来进行区分 外键:外键用于关联两个表。 复合键:复合键(组合键)将多个列作为一个索引键,一般用于复合索引 索引:使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构。类似于书籍的目录。
二.基础指令
1、 登陆mysql管理
mysql -u用户名 -p密码 回车之后直接进入系统,不需要像上面那样,再进行密码的输入
mysql -u 用户名 -p -h ip
mysql -u 用户名 -p
注意: 在dos命令中编写sql语句需要以分号作为一条语句的结束标志。
2、常规命令
show databases; 查询mysql中所有的数据库名称
use 数据库名; 切换数据库
create database 数据库名; 新建数据库
create database if not exists 数据库名; 创建库之前先判断库是否存在,不存在才创建。
drop database 数据库名; 删除数据库
show tables; 显示一个库中所有的表名。
3、SQL分类
3.1、DML
Data Manipulation Language 数据操作语言 添加,修改,删除(insert update delete )这类sql语句就是DML
3.2、DDL
Data Definition Language 数据定义语言 新建数据库,新建数据表,删除数据库,删除数据表,修改数据库,修改数据表等
3.3 DQL
Data Query Language 数据查询语言 查询数据表中数据的SQL语句 select 这类SQL语句就是DQL
3.4 DCL
Data Control Language 数据控制语句 存取权限,存取许可等 FLUSH PRIVILEGES;
4、运算符
算术运算符 ,-,*,/,% (没有复合运算 =,-= , ,--)
关系运算符 =(赋值和关系等于都是它) , >,<,>=,<=, != <>
逻辑运算符 not(非) and (与) or (或)
5、设置时区
show variables like '%time_zone%'; 查看当前的系统时区,如果没有设置就是system
set global time_zone=' 8:00'; 设置mysql的时区是东八区
exit; 退出一下mysql再次,让设置更新
select now(); 查看一下当前的mysql时间,会和北京时间一致。