MySQL初阶学习日记(1)--- 数据库的基本操作

1.数据库的基本介绍

MySQL是一种广泛使用的关系型数据库管理系统(RDBMS),其核心特点包括开源免费、跨平台支持、高性能和易用性。以下是MySQL的详细介绍:

核心概念

‌数据库定义‌

数据库是按照数据结构组织、存储和管理数据的仓库,本质上是电子化的文件柜。MySQL通过表结构存储数据,支持海量数据的高效管理‌。
2.

‌关系型数据库特性‌
  1. 数据以表格形式存储,通过主键、外键等关联实现结构化。

  2. 支持SQL(结构化查询语言)进行数据操作,如增删改查‌

2.数据库的一些基本操作

2.1 创建数据库

在MySQL中,创建数据库的基本命令是 CREATE DATABASE(create database) ,后跟数据库名称。例如,要创建一个名为 **test **的数据库,可以执行以下命令:

sql 复制代码
CREATE DATABASE text;

执行后,可能需要刷新数据库列表才能看到新创建的库‌

在创建数据库时需要注意库名是唯一的,如果我们怕再创建过程中出现相同的库名,出现报错,那可以试一下 **create database if not exists 库名;**即使库名重复,也不会出现报错

2.2 查看数据库

要查看当前MySQL服务器上所有的数据库,可以使用命令:

sql 复制代码
show DATABASES;

不知道大家有没有发现,我的这一行语句是存在大小写的,但它仍能正常运行,所以一般情况下在Windows 系统中是不区分大小写的,我去询问了DeepSeek,它给了我一个详细的解释,大家可以一起看一下:

MySQL 的大小写区分规则取决于具体的对象类型和操作系统环境‌。以下是主要规则:

1)不区分大小写的情况

  • ‌SQL 关键字和函数名‌:如 SELECTFROM 等不区分大小写‌。

  • ‌列名和列的别名‌:在查询中通常忽略大小写‌。

  • ‌字段内容‌:默认情况下,字段的存储内容不区分大小写(如 'user''USER' 视为相同)。

2)区分大小写的情况

  • ‌数据库名和表名‌:

    • ‌Linux 系统‌:默认严格区分大小写(如 testTEST 视为不同对象)‌。

    • ‌Windows 系统‌:默认不区分大小写‌。

  • ‌表的别名‌:严格区分大小写‌。

  • ‌变量名‌:严格区分大小写‌。

3)配置大小写敏感性

通过 lower_case_table_names 参数控制表名的大小写敏感性‌:

  • 0:区分大小写(Linux 默认)。

  • 1:不区分大小写(Windows 默认)。

  • 2:表名按原样存储,但比较时忽略大小写(macOS 默认)。

‌注意‌:MySQL 8.0 及以上版本初始化后无法修改此参数,需在安装时配置‌。

2.3 删除数据库

删除数据库使用DROP DATABASE命令。这是一个不可逆的操作,会删除数据库中的所有表和数据,因此需要谨慎执行。基本命令如下:

sql 复制代码
drop database text;

我们可再调用一遍show databases; 来验证数据库是否已经删除

!!!注意事项

  • 不可逆操作‌:删除数据库操作是不可逆的,一旦执行,数据将无法恢复,除非有备份。

  • 谨慎操作‌:在执行删除操作前,请确保已备份重要数据,或确认该数据库确实不再需要。

3.一些问题(课上遇到的问题可能与本节课无关,作为了解)

3.1 一个汉字占几个字节

由编码决定:
  1. GBK/GB2312编码‌:一个汉字占用 ‌2个字节‌‌1。

  2. ‌UTF-8编码‌:一个汉字通常占用 ‌3个字节‌,但部分生僻字可能占用 ‌4个字节‌‌。

  3. ‌Unicode编码‌:固定占用 ‌2个字节‌(如UTF-16)或 ‌4个字节‌(如UTF-32)‌

3.2 内存和硬盘的区别

‌功能‌
  • ‌内存(RAM)‌:临时存储,存放CPU正在处理的数据,断电消失。

  • ‌硬盘‌:长期存储,保存系统、软件和文件,断电保留。

‌速度与容量‌
  • ‌内存‌:速度快(每秒数十GB),容量小(通常8-32GB)。

  • ‌硬盘‌:速度慢(机械硬盘更慢),容量大(通常256GB-1TB+)。

‌总结‌:内存决定运行速度,硬盘决定存储空间

3.3 常见游戏类型

1)角色扮演游戏(RPG)

玩家扮演特定角色,在虚拟世界中探索、成长并体验剧情。RPG可以细分为:

  • ‌MMORPG‌(大型多人在线RPG):如《魔兽世界》《最终幻想14》,强调社交和开放世界‌。

  • ‌ARPG‌(动作RPG):如《暗黑破坏神》《原神》,结合动作操作与角色成长‌。

  • ‌JRPG‌(日式RPG):如《勇者斗恶龙》《异度之刃》,注重线性剧情和回合制战斗‌。

2)第一人称/第三人称射击游戏(FPS/TPS)
  • ‌FPS‌(第一人称射击):如《CS:GO》《战地》,以主观视角进行射击,强调沉浸感‌。

  • ‌TPS‌(第三人称射击):如《守望先锋》,结合射击与动作元素,角色可见。

3)策略游戏(SLG)
  • ‌RTS‌(即时战略):如《星际争霸》,实时操作、资源管理和部队指挥‌。

  • ‌TBS‌(回合制策略):如《文明》,轮流行动,注重深度策略。

4)动作游戏(ACT)

强调打击感、连招和手速,如《鬼泣》《只狼》。

5)冒险与解谜游戏(AVG/PUZ)
  • ‌AVG‌(冒险游戏):如《生化危机》,以剧情和解谜为核心。

  • ‌PUZ‌(解谜游戏):如《纪念碑谷》,注重机关推理和观察。

6)其他类型
  • ‌竞速游戏(RAC)‌:如《极品飞车》,追求速度与漂移。

  • ‌模拟经营(SIM)‌:如《模拟城市》,注重建造与管理。

  • ‌格斗游戏(FTG)‌:如《街头霸王》,强调对战与招式组合。

3.4 逻辑删除

逻辑删除是一种数据库管理技术,它通过修改记录的状态(如将is_delete字段设为1'D')来标记数据为"已删除",而非真正从物理存储中移除数据‌。这种设计常用于需要数据留痕、审计或恢复的场景,例如电商平台或文件回收站‌。

核心特点
  1. ‌非物理删除‌:数据仍存在于数据库中,仅通过状态字段控制可见性‌。

  2. ‌可恢复性‌:通过更新状态字段(如is_delete=0)即可恢复数据‌。

  3. ‌与唯一索引的冲突‌:若唯一索引包含逻辑删除字段,可能导致重复数据问题(如已删除记录与新记录状态冲突)‌。解决方案包括:

    • 将删除标记改为唯一值(如当前记录的ID)‌。

    • 使用联合唯一索引时,确保逻辑删除字段与其他字段的组合唯一‌

大家一起加油鸭!!

相关推荐
星释2 小时前
二级等保实战:MySQL安全加固
android·mysql·安全
musenh3 小时前
css样式学习
css·学习·css3
workflower3 小时前
FDD(Feature Driven Development)特征驱动开发
大数据·数据库·驱动开发·需求分析·个人开发
Larry_Yanan3 小时前
QML学习笔记(五十)QML与C++交互:QML中单例C++对象
开发语言·c++·笔记·qt·学习·ui·交互
im_AMBER3 小时前
算法笔记 09
c语言·数据结构·c++·笔记·学习·算法·排序算法
韩立学长4 小时前
基于Springboot的旧物公益捐赠管理系统3726v22v(程序、源码、数据库、调试部署方案及开发环境)系统界面展示及获取方式置于文档末尾,可供参考。
数据库·spring boot·后端
Nan_Shu_6144 小时前
学习:JavaScript(5)
开发语言·javascript·学习
苦学编程的谢4 小时前
Redis_4_常见命令(完)+认识数据类型和编码方式
数据库·redis·缓存
小光学长4 小时前
基于Vue的儿童手工创意店管理系统as8celp7(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
前端·数据库·vue.js