华清远见-重庆中心-数据库/知识点梳理/个人总结/面试题解析

这篇博客详细介绍了数据库的基础知识,包括数据存储形式、数据库分类、ER模型、MySQL命令行操作和SQL语言。博主还分享了数据库管理系统的使用,如Navicat,以及MySQL中数据类型的约束、表的创建、数据的增删改查。此外,文章涵盖了多表查询、子查询、数据库事务、JDBC连接及Redis等非关系型数据库的介绍。最后,博主总结了学习体会,并给出了数据库面试题目,涉及三范式、自增ID和版本查询等。
摘要由CSDN通过智能技术生成

数据库第一天:

1.数据存储形式

- 文件(存储在硬盘)

​ 文件存储的格式

​ 对数据处理可以通过java代码实现

​ 缺点:读写速度慢,硬盘本身的特点就是读写慢

- 变量(存储在内存)

​ 读写速度块,临时数据的存储

- 数据库(数据库管理系统)

数据库管理系统(DBMS: database manage system) 是一套软件。是一种存储和管理数据表和软件系统。

​ 适用于大数据量,支持多人并发操作。

​ 数据库中的数据是永久存储,数据操作效率高

2.如果要使用数据库,需要做什么操作

- 安装数据库的服务器软件(server-服务器)

- 官网:MySQL

安装之前,先卸载其他的mysql服务器软件

建议:只安装 mysql server

​ 安装完成之后:可以在服务中,找到mysql服务已经启动成功了

配置环境path,可以使用命令,操作数据库的数据

查询数据库版本:mysql --version

​ 命令行链接数据库

安装客户端软件:

Navicat Premium 15:通过客户端软件,连接到mysql服务器软件,然后使用图形化的操作界面,降低sql的难度

客户端软件的操作:图形化界面

3.数据库分类

关系型数据库 MySQL ,sql sever,oracle,db2......

数据以二维表的方式存储

​ 表与表之间的方式存储

​ 实体之间的关系关联

​ 支持SQL(结构化查询语言)语言(近期学习的重点)

非关系型数据库 :redis(后期要使用),MongoDB,Hbase.....

数据按不同的数据类型存储。

不支持SQL

4.ER模型(E-entity实体,R-relation关系)

ER模型,就是将数据库中的table之间的关系,以图形的方式展示出来

ER模型,就是创建数据库的依据

矩形代表实体,菱形代表关系,椭圆代表实体的属性

表之间的关系:

一对一:一个国家有一个总统

一对多:一个班级有多个学生

多对多:课程和学生

5.mysql的命令行操作

连接到mysql服务器:

mysql-u root -p 

使用mysql的命令

  -- 是mysql的注释
show databases; -- 显示所有的数据库
use hello;-- 选择要使用的数据库的名字
show tables;-- 显示hello数据库的所有的表
des stu;-- 查看stu表的结构
        -- Field ,字段
        -- Type ,字段的类型
        -- Key ,(是否为主)键
+--------+--------------+------+-----+---------+-------+
| Field  | Type         | Null | Key | Default | Extra |
+--------+--------------+------+-----+---------+-------+
| name   | varchar(255) | YES  |     | NULL    |       |
| age    | int          | YES  |     | NULL    |       |
| gender | varchar(10)  | YES  |     | NULL    |       |
+--------+--------------+------+-----+---------+-------+
insert into stu(name,age,gender)values('邹麟',18,'女');
-- 插入数据的sql语句
-- 插入成功之后,数据库的提示信息:Query OK, 1 row affected (0.00 sec)   汉字需要加单引号
select * from stu;-- 查询数据
+------+------+--------+
| name | age  | gender |
+------+------+--------+
| 刘思 |   20 | 女     |
| 洪涵 |   20 | 男     |
| 林涛 |   21 | 男     |
| 邹麟 |   18 | 女     |
+------+------+--------+
 update stu set age = 22 where name='洪涵';-- 修改数据
Query OK, 1 row affected (0.00 sec)-- 修改后之后成功信息

delete from stu; --删除数据
Query OK, 4 rows affected (0.00 sec) -- 删除成功之后的提示信息
drop table stu;-- 删除名字叫stu的表

 drop database hello;-- 删除名字叫hello的数据库
 
  create database cms; -- 创建名字叫cms的数据库
  create table test(id int ,name varchar(6),pwd varchar(8));-- 创建一个叫test的表
6.SQL(Struct Query Language):结构化查询语言

sql语言中,字符串可以使用单引号或者双引号,保证单双引号匹配

注释:-- 注释内容 ,/**/

sql语言中,关键字不区分大小写,字段名不区分大小写,数据内容有大小写之分

比如:select 同SELECT,NAME字段,也可以是name,数据“ALICE”和“alice“就有区分

ql的使用:

- 创建数据库:create database 数据库名字;

​ create database 数据库名字 default character set utf8; --指定了数据库的编码

删除数据库:drop database 数据库名字;

2.创建表:

​ create table 表名(字段 字段类型 约束条件,字段2...)

​ 如果字段名,表名和关键字去重复了,那么就在字段名或表名上添加引号。

​ 尽量避免和关键字重名,一般表可以叫前缀:cms_stu --表示学生表 ,s_name --表示学生表的字段名

约束条件:not null,表示字段值不能是null int类型的数据,可以设置为自动增加 :auto_increment

主键约束:primary key ,主键的特征就是非空且不重复,一般用于实现表中的每行数据不重复。

drop table表名 :--删除表

数据库第二天:

1.安装数据库软件

​ --mysql server(服务器) 默认的服务器端口号:3306

2.navicat --client(客户端)

ip:port a.本地(连接自己的电脑)b.连接公共的

3.使用client 连接 server,然后可以操作服务器上的数据。

1.MySql中常见的数据类型

2.约束
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值