MySQL初学之旅(1)配置与基础操作

news2024/11/26 13:24:54

85fb7bf2aa654fc28cdfa712d1f776df.jpeg


目录

1.前言

2.正文

2.1数据库的发展历程

2.2数据库的基础操作

2.2.1启动服务

2.2.2创建与删除数据库

2.2.3数据类型

2.2.4创建表与删除表

2.3MySQL Workbench基础使用简介

3.小结


1.前言

哈喽大家好吖,今天博主正式开始为大家分享数据库的学习,数据库的学习也是为了未来能够完成企业级项目而添砖Java(doge),那么废话不多说,让我们开始吧。

2.正文

2.1数据库的发展历程

在正式学习数据库之前,让我们先了解下MySQL的发展历程以及我们为什么要学习MySQL,这对我们会有什么帮助。

MySQL的历史可以追溯到1979年,当时Michael Widenius在一家名为TcX的小公司工作,他创建了一个名为Unireg的报告工具,最初是用BASIC(这个就是俗称的B语言)编写的,运行在4 MHz的计算机和16KB的RAM上。

50e8d9f967aa427f983e6f46e390c55c.png

随着时间的推移,这个工具被用C语言重写,并移植到了Unix平台上。1995年,MySQL由David Axmark, Allan Larsson和Michael Widenius三位工程师在瑞典创立,并在同年发布了第一个MySQL服务器版本。1996年,MySQL 1.0版本首次发布,随后在同年10月发布了MySQL 3.11.1版本,最初只提供了Solaris的二进制版本,一个月后发布了源代码和Linux二进制版本。在接下来的两年里,MySQL被移植到多个操作系统上,功能集逐渐增加。

e39c3e8841eb4cccb179faa8265b2c54.png

2000年左右,MySQL AB公司成立,并与Sleepycat合作,为Berkeley DB数据文件提供SQL接口,从而为MySQL增加了事务处理能力。2001年,MySQL集成了InnoDB存储引擎,该引擎支持事务处理和行级锁。MySQL 4.0版本正式结合了InnoDB,而到了MySQL 5.0版本,增加了视图、存储过程等功能。

2a4e715b212c4a7baf51c63183b01ada.png

2008年1月16日,MySQL被Sun公司收购。后来,Oracle在2010年收购了Sun Microsystems,MySQL现在由Oracle拥有。

在了解完MySQL的大致发展历程,接下来我们就需要知道我们为什么要学习MySQL 

数据库是用来干什么的呢:

数据库是一个用于存储、组织、管理和高效访问大量结构化数据的关键系统。它允许用户通过特定的软件应用程序或查询语言来添加、访问、更新和删除数据,从而支持各种业务操作、决策制定和信息系统。

我们使用MySQL的优点:

  1. 简单易用:MySQL以其简单易用的特点吸引了大量Java开发者。它的安装和配置过程相对简单,提供了友好的图形用户界面和丰富的命令行工具,使得开发者可以轻松管理数据库、执行SQL查询和维护数据。

  2. 性能优异:MySQL在大规模数据处理和高并发访问场景下保持高效运行。Java应用往往需要处理大量数据和高频率的数据库操作,MySQL在这种情况下表现尤为出色。

  3. 社区支持:MySQL作为开源项目,拥有庞大的用户社区和丰富的资源支持。Java开发者可以通过社区获得大量的学习资料、技术文档和示例代码。

  4. 丰富的工具生态:MySQL拥有丰富的工具生态,为Java开发者提供了诸多便利,包括数据库管理工具、数据迁移工具和性能监控工具等。

  5. 成本效益:MySQL作为开源数据库,具有极高的成本效益。Java开发者可以免费使用MySQL,避免了高昂的商业数据库许可费用。

  6. 广泛应用场景:MySQL在各类应用场景中都有广泛的应用,包括Web应用、企业系统、数据分析等。其灵活的架构和强大的功能使得Java开发者可以根据不同的需求选择最合适的解决方案。

  7. 不断创新和更新:MySQL作为开源项目,持续不断地进行创新和更新,不断推出新功能和优化性能。Java开发者可以及时获取MySQL的最新版本,享受到最新的技术和功能。

2.2数据库的基础操作

2.2.1启动服务

在使用MySQL服务之前,当然要先去官网安装配置环境咯,官网奉上MySQLhttps://www.mysql.com/cn/

在配置好环境之后我们需要在电脑上启动数据库服务,有以下俩种方法启动:

  • 搜索栏直接搜索服务去寻找MySQL。
  • 或者win+R输入services.msc打开服务。

3c7322fd9c9247e88bc4ec4beebd5eef.png

找到MySQL启动服务。

9e9467b863394d468a535cf77763968c.png

启动完服务后打开箭头所在,并输入密码,如果出现以下结果说明已经数据库服务开始运行起来咯

 5af695b8ac7640929f3dfcfe53fa500f.png

bceaab61e14f405cb2a2c6b943039ddd.png

这样我们就完成了以上操作,可以开始代码部分的学习了。

2.2.2创建与删除数据库

展示当前数据库:

show databases;

 4d35b0ad86054086865452e449a177c9.png

创建数据库:

create database (if not exists) testbase;

注:小括号内为可加可不加,意思为如果不存在该名的数据库就创建,否则报错,testbase为数据库名,可任意写。

为了显示创建效果我们再使用show databases;语句:

1b6fe8366bcb4800a9c320cf8e076230.png

可见创建成功。

删除数据库:

drop database (if exists) databasename;

我们删除一下上文刚创建的数据库并展示出来:

c629f65c18f047fe8cc1c7465ab46917.png

2.2.3数据类型

因为数据库中会存储各种各样类型的数据,所以在数据库中也有数据类型,详解如下:

一、数值类型

数值类型用于存储整数或小数,包括整数类型、浮点类型和定点数类型。

  1. 整数类型

    • TINYINT:小整数,范围从-128到127(有符号)或0到255(无符号)。
    • SMALLINT:小型整数,范围从-32,768到32,767(有符号)或0到65,535(无符号)。
    • MEDIUMINT:中型整数,范围从-8,388,608到8,388,607(有符号)或0到16,777,215(无符号)。
    • INT:标准整数,范围从-2,147,483,648到2,147,483,647(有符号)或0到4,294,967,295(无符号)。
    • BIGINT:大整数,范围从-9,223,372,036,854,775,808到9,223,372,036,854,775,807(有符号)或0到18,446,744,073,709,551,615(无符号)。
  2. 浮点类型

    • FLOAT:单精度浮点数,范围约为-3.402823466E+38到3.402823466E+38。
    • DOUBLE:双精度浮点数,范围约为-1.7976931348623157E+308到1.7976931348623157E+308。
  3. 定点数类型

    • DECIMAL(M, D):精确的数值类型,M是总位数,D是小数位数。例如,DECIMAL(10, 2)可以存储总共10位数字,其中2位在小数点后。一般表示小数推荐使用这个,更加精准

二、字符串类型

字符串类型用于存储文本或字符数据,包括定长字符串、变长字符串和文本字符串。

  1. 定长字符串

    • CHAR(M):定长字符串,字符数为M。若实际存储的字符少于M,则用空格填充。
  2. 变长字符串

    • VARCHAR(M):变长字符串,最大字符数为M。存储实际字符数加1或2字节用于记录长度。这个也是使用比较多的。
  3. 文本字符串

    • TINYTEXT:最多255字节的文本。
    • TEXT:最多65,535字节的文本。
    • MEDIUMTEXT:最多16,777,215字节的文本。
    • LONGTEXT:最多4,294,967,295字节的文本。

此外,还有二进制字符串类型,如BINARY(定长二进制字符串)和VARBINARY(变长二进制字符串)。


三、日期和时间类型

日期和时间类型用于存储日期和时间值,包括以下几种:

  1. DATE:日期,格式为YYYY-MM-DD,范围为1000-01-01到9999-12-31。
  2. TIME:时间,格式为HH:MM:SS,范围为'-838:59:59'到'838:59:59'。
  3. DATETIME:日期和时间,格式为YYYY-MM-DD HH:MM:SS,范围为1000-01-01 00:00:00到9999-12-31 23:59:59。

2.2.4创建表与删除表

表是什么?表是数据库中存储数据的基本结构。一个表通常由行(rows)和列(columns)组成,类似于Excel电子表格或纸质表格。每一列代表一个字段,每一行代表一条记录。表用于组织和存储特定类型的数据,例如,一个图书馆数据库中的“Books”表可能包含书名、作者、ISBN号和出版日期等字段。

在创建表之前,先得使用当前需要操作的数据库:

use database_name;

06c93aaf4e334718a32cd7047ad41f2d.png

创建表 :

CREATE TABLE 表名 (  
    列名1 数据类型 [约束],  
    列名2 数据类型 [约束],  
    ...  
    [表选项]  
);

示例: 

7b16bbe8131f48098d92aff8384a2ba0.png

删除表:

DROP TABLE 表名;

7aa7788716794357aff39c8839529153.png

这就是一些基础操作,至于比较关键的增删改查我们后续会有详细的讲解。

2.3MySQL Workbench基础使用简介

接下来让我们大概了解下是如何使用的MySQL Workbench,这个是在咱们配置MySQL环境时就有这个软件,让我们更加方便的操作数据,让我们先简单介绍下MySQL Workbench。

MySQL Workbench是一款专门为MySQL设计的集成化桌面软件,也是一款功能强大的数据库管理工具。它提供了数据库设计与模型建立、SQL开发、数据库管理等功能,并支持Windows、Linux和Mac OS等操作系统。

打开这个页面:

9eee079485764e96972d804c8117a1ad.png

第一次进入需要密码,输入自己设置的即可。

创建数据库:

29ebedc399024066a14244197c4ec945.png

给数据库起完名字后,点击apply,

4da1665f3c644343bb8e1a0fccc9a8c7.png

新建表:

9dec13b67b7641b3ab6138c144aaf183.png

在下面这个页面为表格创建里面的变量,填写数据类型,或者填上注解,最后apply。

697ff616bb9b407a9da3fb8e75e139a6.png

点击apply:

5d42b87c6f614a8bb400fcb3f6d6b935.png

这样一个表就创建完毕了。

dcb0fc11dccf43a58365d106067b81d0.png

删除右键drop即可。

3.小结

今天的分享到这里就结束了,喜欢的小伙伴点点赞点点关注,你的支持就是对我最大的鼓励,加油!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2237538.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【环境搭建】使用Dockerfile构建容器搭建Kylin特定版本

Kylin的有些版本官方已经下架了,Docker Hub上也没镜像了,所以需要自己搭建以下,为了以后更方便快捷地使用,就编写了一个更轻量级的Dockerfile。 准备工作 本次搭建使用的源码包来自华为云镜像站,里面有Kylin各个版本…

【图】图学习

0 回顾数据结构逻辑 1 图的定义和基本术语 必须有顶点,可以没有边。 Cn2和2*Cn2(数学上的,n个顶点取2个顶点) 概念有些多。。。。。。 2 图的定义 3 图的存储结构 无向图的邻接矩阵 有向图的邻接矩阵 网(有权图&#…

基于RMD算法模型的信号传输统计特性的matlab模拟仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 5.完整程序 1.程序功能描述 基于RMD算法模型的信号传输统计特性的matlab模拟仿真。参考的文献如下: 即通过RMD随机中点位置模型算法,实现上述文献的几个仿真图。 2.…

【React】React 生命周期完全指南

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 React 生命周期完全指南一、生命周期概述二、生命周期的三个阶段2.1 挂载阶段&a…

软件工程 软考

开发大型软件系统适用螺旋模型或者RUP模型 螺旋模型强调了风险分析,特别适用于庞大而复杂的、高风险的管理信息系统的开发。喷泉模型是一种以用户需求为动力,以对象为为驱动的模型,主要用于描述面向对象的软件开发过程。该模型的各个阶段没有…

C++20 概念与约束(2)—— 初识概念与约束

1、概念 C20 中引入新的编译期关键字 concept 用于创建概念。个人认为将其翻译为“构思”更为贴切。直接使用时,它更像一个只能用于模板的布尔类型关键字。 而如果用于模板中,他会将模板类型先带入自身,当自身条件为 true 才会实例化模板&…

Everything软件实现FTP功能

Windows的文件共享和ftp实在难用,这里介绍一种新的局域网内共享文件的方法 下载 Everything 选择想要共享的文件,选择包含到数据库,注意:要在对应的分卷设置,共享文件夹名称不要包含中文字符,因为Windows底…

系统管理与规划师

综合 工业化、信息化两化融合:战略、资源、经济、设备和技术的融合 诺兰6时期:(初普控,整数成)初始、普及、控制、整合、数据管理、成熟期;技术转型期介于控制和整合间 IT战略规划 IT战略制定:使…

初始MQ(安装使用RabbitMQ,了解交换机)

目录 初识MQ一:同步调用二:异步调用三:技术选型 RabbitMQ一:安装部署二:快速入门三:数据隔离 java客户端一:快速入门二:workqueues三:Fanout交换机四:Direct交…

[C++11] 类中新特性的添加

默认的移动构造和移动赋值 在 C11 之前,编译器会为每个类自动生成默认的构造函数、析构函数、拷贝构造函数、拷贝赋值运算符等函数,以实现对象的创建、销毁和拷贝操作。但拷贝操作会复制整个对象的数据,效率低,尤其是在处理大对象…

emr上使用sparkrunner运行beam数据流水线

参考资料 https://time.geekbang.org/column/intro/167?tabcatalog Apache Beam和其他开源项目不太一样,它并不是一个数据处理平台,本身也无法对数据进行处理。Beam所提供的是一个统一的编程模型思想,而我们可以通过这个统一出来的接口来编…

github高分项目 WGCLOUD - 运维实时管理工具

GitHub - tianshiyeben/wgcloud: Linux运维监控工具,支持系统硬件信息,内存,CPU,温度,磁盘空间及IO,硬盘smart,GPU,防火墙,网络流量速率等监控,服务接口监测&…

MyBatisPlus 用法详解

文章目录 一、快速入门1.1 引入依赖:1.2 定义 Mappper:1.3 使用演示:1.4 常见注解:1.4.1 TableName:1.4.2 TableId:1.4.3 TableField: 1.5 常见配置: 二、核心功能2.1 条件构造器:2.…

Python小游戏23——捕鱼达人

首先,你需要安装Pygame库。如果你还没有安装,可以使用以下命令进行安装: 【bash】 pip install pygame 运行效果展示 接下来是示例代码: 【python】 import pygame import random # 初始化Pygame pygame.init() # 屏幕尺寸 SCREEN…

库打包工具 rollup

库打包工具 rollup 摘要 **概念:**rollup是一个模块化的打包工具 注:实际应用中,rollup更多是一个库打包工具 与Webpack的区别: 文件处理: rollup 更多专注于 JS 代码,并针对 ES Module 进行打包webpa…

基于SSM+VUE小学生素质成长记录平台JAVA|VUE|Springboot计算机毕业设计源代码+数据库+LW文档+开题报告+答辩稿+部署教+代码讲解

源代码数据库LW文档(1万字以上)开题报告答辩稿 部署教程代码讲解代码时间修改教程 一、开发工具、运行环境、开发技术 开发工具 1、操作系统:Window操作系统 2、开发工具:IntelliJ IDEA或者Eclipse 3、数据库存储&#xff1a…

【架构设计常见技术】

EJB EJB是服务器端的组件模型,使开发者能够构建可扩展、分布式的业务逻辑组件。这些组件运行在EJB容器中,EJB将各功能模块封装成独立的组件,能够被不同的客户端应用程序调用,简化开发过程,支持分布式应用开发。 IOC …

优选算法 - 1 ( 双指针 移动窗口 8000 字详解 )

一&#xff1a;双指针 1.1 移动零 题目链接&#xff1a;283.移动零 class Solution {public void moveZeroes(int[] nums) {for(int cur 0, dest -1 ; cur < nums.length ; cur){if(nums[cur] 0){}else{dest; // dest 先向后移动⼀位int tmp nums[cur];nums[cur] num…

鸿蒙操作系统是什么?与安卓系统有什么区别?

鸿蒙操作系统 鸿蒙操作系统&#xff08;HarmonyOS&#xff09;是华为公司发布的一款基于微内核的面向全场景的分布式操作系统。 发展历程&#xff1a; 早期规划&#xff1a;华为从2012 年开始规划自有操作系统&#xff0c;并在芬兰赫尔辛基设立智能手机研发中心&#xff0c;招…

现场工程师日记-MSYS2迅速部署PostgreSQL主从备份数据库

文章目录 一、概要二、整体架构流程1. 安装 MSYS2 环境2. 安装postgresql 三、技术名词解释1.MSYS22.postgresql 四、技术细节1. 创建主数据库2.添加从数据库复制权限3. 按需修改参数&#xff08;1&#xff09;WAL保留空间&#xff08;2&#xff09;监听地址 4. 启动主服务器5.…