数据库基础01
文章目录
- 一、数据库的基本概念
- 1.1 MySQL的安装和使用
- 1.2 数据模型
- 1.2.1 关系型数据库(RDBMS)
- 1.2.2 数据模型
- 二、SQL语句
- 2.1 sql通用语法
- 2.2 SQL语句分类
- 三、DDL的相关语法
- 3.1 数据库操作
- 3.1.1 查询语法
- 3.1.2 创建语法
- 3.1.3 删除数据库
- 3.1.4 切换数据库
- 3.2 表操作
- 3.2.1 查询所有表
- 3.2.2 查看指定表结构
- 3.2.3 创建表结构
- 3.2.4 表的修改
- 3.2.4 表的删除
- 四、图形可视化工具
一、数据库的基本概念
1.1 MySQL的安装和使用
它提供了两种版本,一种是免费的社区版,另一种则是收费的商业版,这里主要使用的是社区版
下载地址:点击这里
接下来的安装步骤教程很多,作为初学者都默认并下一步最为保险:-)。
这里会将sql服务注册成一个系统服务MySQL80,用于后期的启动和关闭
在这里可以启动和关闭系统服务
为系统添加环境变量
将如下路径添加到系统的环境变量中
这样就可以在系统的cmd中直接运行sql了
1.2 数据模型
1.2.1 关系型数据库(RDBMS)
概念:建立在关系模型基础上,由多张相互连接的二维表组成的数据库。
而所谓二维表,指的是由行和列组成的表,如下图(就类似于Excel表格数据,有表头、有列、有行,还可以通过一列关联另外一个表格中的某一列数据)。我们之前提到的MySQL、Oracle、DB2、SQLServer这些都是属于关系型数据库,里面都是基于二维表(二维表就是类似于excel的表)存储数据的。
简单说,基于二维表存储数据的数据库就成为关系型数据库,不是基于二维表存储数据的数据库,就是非关系型数据库。
1.2.2 数据模型
MySQL是关系型数据库,是基于二维表进行数据存储的,具体的结构图下:
- 我们可以通过MySQL客户端连接数据库管理系统DBMS,然后通过DBMS操作数据库。
- 可以使用SQL语句,通过数据库管理系统操作数据库,以及操作数据库中的表结构及数据。
- 一个数据库服务器中可以创建多个数据库,一个数据库中也可以包含多张表,而一张表中又可以包含多行记录。
二、SQL语句
2.1 sql通用语法
在学习具体的SQL语句之前,先来了解一下SQL语言的同于语法。
- SQL语句可以单行或多行书写,以分号
;
结尾。 - SQL语句可以使用空格或
/
缩进来增强语句的可读性。 - MySQL数据库的SQL语句不区分大小写,关键字建议使用大写。
- 注释:
- 单行注释:-- 注释内容 或 # 注释内容
- 多行注释:/* 注释内容 */
2.2 SQL语句分类
SQL语句,根据其功能,主要分为四类:DDL、DML、DQL、DCL。
三、DDL的相关语法
Data Definition Language(DDL),数据定义语言,用来定义数据库对象(数据库,表,字段)
3.1 数据库操作
3.1.1 查询语法
查询所有数据库
show databases ;
运行结果:
查询当前数据库
select database() ;
3.1.2 创建语法
create database [ if not exists ] 数据库名 [ default charset 字符集 ] [ collate 排序
规则 ] ;
用法举例:
3.1.3 删除数据库
drop database [ if exists ] 数据库名 ;
如果删除一个不存在的数据库,将会报错。此时,可以加上参数 if exists ,如果数据库存在,再执行删除,否则不执行删除。
3.1.4 切换数据库
use 数据库名 ;
我们要操作某一个数据库下的表时,就需要通过该指令,切换到对应的数据库下,否则是不能操作的。
比如,切换到iii数据库,执行如下SQL,之后可以查看当前的数据库:
3.2 表操作
3.2.1 查询所有表
show tables;
可以先用use语法切换到数据库并查表
3.2.2 查看指定表结构
desc 表名
用法举例:
3.2.3 创建表结构
用法举例:
注意:每个字段之后的逗号是否添加
对于创建表时的数据类型可以有:数值类型、字符串类型、日期时间类型。
数值类型
字符串类型
- char和varchar在使用时会跟上括号作为字符长度
日期和时间类型
3.2.4 表的修改
表的修改以alter开头
添加字段
ALTER TABLE 表名 ADD 字段名 类型 (长度) [ COMMENT 注释 ] [ 约束 ];
用法举例:
为emp表增加一个新的字段”昵称”为nickname,类型为varchar(20)
ALTER TABLE emp ADD nickname varchar(20) COMMENT '昵称';
修改数据类型
ALTER TABLE 表名 MODIFY 字段名 新数据类型 (长度);
修改字段名和字段类型
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型 (长度) [ COMMENT 注释 ] [ 约束 ];
将emp表的nickname字段修改为username,类型为varchar(30)
ALTER TABLE emp CHANGE nickname username varchar(30) COMMENT '昵称';
删除字段
ALTER TABLE 表名 DROP 字段名;
将emp表的字段username删除
ALTER TABLE emp DROP username;
修改表名
ALTER TABLE 表名 RENAME TO 新表名;
将emp表的表名修改为 employee
ALTER TABLE emp RENAME TO employee;
3.2.4 表的删除
删除表
DROP TABLE [ IF EXISTS ] 表名;
可选项 IF EXISTS 代表,只有表名存在时才会删除该表,表名不存在,则不执行删除操作(如果不加该参数项,删除一张不存在的表,执行将会报错)。
删除指定表, 并重新创建表
TRUNCATE TABLE 表名;
注意: 在删除表的时候,表中的全部数据也都会被删除。
四、图形可视化工具
教程中使用的是datagrip,自行搜索安装教程
创建新工程
链接mysql
成功后点击apply和ok
展示当前sql下的所有数据库
创建数据库
创建表
数据库和表的修改与创建类似
还可以通过之前所学的方法用语句来修改表