当前位置: 首页 > news >正文

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

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.小结

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

相关文章:

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

目录 1.前言 2.正文 2.1数据库的发展历程 2.2数据库的基础操作 2.2.1启动服务 2.2.2创建与删除数据库 2.2.3数据类型 2.2.4创建表与删除表 2.3MySQL Workbench基础使用简介 3.小结 1.前言 哈喽大家好吖,今天博主正式开始为大家分享数据库的学习&#xff…...

一款革命性的视频剪辑工具,AI剪辑新纪元:Clapper

如果说AI视频剪辑工具哪家强?还真想不出有什么让人眼前一亮的AI视频剪辑应用。 毕竟随着AI技术的发展越来越快,各种AI应用如雨后春笋般涌现,然而,真正能够在视频剪辑领域脱颖而出的工具却寥寥无几。 今天我要介绍的 Clapper 就是…...

HTML 区块

HTML 区块 HTML(HyperText Markup Language)是构建网页的标准语言,它定义了网页的结构和内容。在HTML中,区块元素是指那些能够定义较大块状结构的元素,比如段落、标题、列表、表格和 divis 等。这些元素通常对页面的布…...

复杂度的讲解

数据结构可以简单理解为在内存中管理数据 它具有速度快 带电存储的特点(临时存储) 如何衡量一个算法的好坏 因此衡量一个算法的好坏,一般是从时间和空间两个维度来衡量的,即时间复杂度和空间复杂度。 时间复杂度主要衡量一个算…...

[ Linux 命令基础 2 ] Linux 命令详解-系统管理命令

🍬 博主介绍 👨‍🎓 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~ ✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 🎉点赞➕评论➕收藏 养成习…...

使用docker部署Prometheus和Grafana去监控mysql和redis

自动化性能监控系统安装部署 相关工具的安装部署 服务工具分配 服务器工具端口10.0.20.9grafana300010.0.20.9prometheus909010.0.20.10mysql330610.0.20.10mysql-exporter910410.0.20.10redis330610.0.20.10redis_exporter9121 使用docker-compose安装prometheus 先拉取p…...

日志管理 | Log360 实现PCI DSS v4.0数据安全合规要求

PCI DSS 是一项网络安全标准,得到所有主要信用卡和支付处理公司的支持,旨在确保信用卡和借记卡号码的安全。最新的PCI DSS v4.0 代表支付卡行业数据安全标准。 任何依赖信用卡交易的企业都不能将数字安全视为一个偷工减料的领域,因为数据泄露…...

JAVA中的string和stringbuffer

【之前面试测试岗位的时候有被问到这个问题,面试结束后特地来学习一下】 目录 谁先被提出的String的使用StringBuffer的使用两者区别 谁先被提出的 String类先于StringBuffer被提出,作为Java语言的基础部分,而StringBuffer是为了解决实际开…...

轻型民用无人驾驶航空器安全操控------理论考试多旋翼部分笔记

官网:民用无人驾驶航空器综合管理平台 (caac.gov.cn) 说明:一是法规部分;二是多旋翼部分 本笔记全部来源于轻型民用无人驾驶航空器安全操控视频讲解平台 目录 官网:民用无人驾驶航空器综合管理平台 (caac.gov.cn) 一、轻型民用无人…...

计算用户订购率梧桐数据库和oracle数据库sql分析

一、背景说明 移动运营商平台提供多种类型的产品权益,用户可以通过订购来使用。平台需要定期统计各个产品的用户订购情况,以便了解各个产品的受欢迎程度。这些统计数据将用于优化产品、提升用户体验和制定市场推广策略。 二、表结构说明 梧桐数据库建…...

通过DNS服务器架构解释DNS请求过程

在前面的章节,这里,基于PCAP数据包和RFC文档详细介绍了DNS请求和响应的每个字段的含义。但是在现实的网络世界中,DNS请求和响应的数据包是怎么流动的,会经过哪些设备。本文将着重说明一下目前网络空间中DNS请求和响应的流动过程。 当前网络空间中比较常见DNS请求的流程如下…...

OKG Research:用户意图驱动的Web3应用变革

出品| OKG Research 作者|Samuel QIN 当前加密市场的快速演变中,用户增长成为行业可持续发展的基石。目前主流观点在推动行业前进的路上,从单纯的技术探索在向更注重应用价值的方向转变。尽管近年来Web3生态系统发展迅速&#xf…...

hbase 工具类

hbase 工具类 pom.xml <dependency><groupId>org.apache.hbase</groupId><artifactId>hbase-client</artifactId><version>2.5.10-hadoop3</version> </dependency> <dependency><groupId>com.google.guava<…...

会议直击|美格智能受邀出席第三届无锡智能网联汽车生态大会,共筑汽车产业新质生产力

11月10日&#xff0c;2024世界物联网博览会分论坛——第三届无锡智能网联汽车生态大会在无锡举行&#xff0c;美格智能CEO杜国彬受邀出席&#xff0c;并参与“中央域控&#xff1a;重塑汽车智能架构的未来”主题圆桌论坛讨论&#xff0c;与行业伙伴共同探讨智能网联汽车产业领域…...

在 Jupyter Notebook 中使用 Matplotlib 进行交互式可视化的教程

在 Jupyter Notebook 中使用 Matplotlib 进行交互式可视化的教程 引言 数据可视化是数据分析的重要组成部分&#xff0c;能够帮助我们更直观地理解数据。Matplotlib 是 Python 中最流行的绘图库之一&#xff0c;而 Jupyter Notebook 则是进行数据分析和可视化的理想环境。本文…...

Android13 系统/用户证书安装相关分析总结(三) 增加安装系统证书的接口遇到的问题和坑

一、前言 接上回说到&#xff0c;修改了程序&#xff0c;增加了接口&#xff0c;却不知道有没有什么问题&#xff0c;于是心怀忐忑等了几天。果然过了几天&#xff0c;应用那边的小伙伴报过来了问题。用户证书安装没有问题&#xff0c;系统证书(新增的接口)还是出现了问题。调…...

【C++ 算法进阶】算法提升十三

目录标题 抽牌概率问题 &#xff08;动态规划&#xff09;动态规划题目分析代码 洗衣机问题 &#xff08;贪心&#xff09;题目题目分析 抽牌概率问题 &#xff08;动态规划&#xff09; 动态规划 假设现在有1~N N张牌 每张牌的序号就代表着他的大小 &#xff08;1 2 … N&am…...

【计网不挂科】计算机网络期末考试(综合)——【选择题&填空题&判断题&简述题】完整试卷

前言 大家好吖&#xff0c;欢迎来到 YY 滴计算机网络 系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过C的老铁 本博客主要内容&#xff0c;收纳了一部门基本的计算机网络题目&#xff0c;供yy应对期中考试复习。大家可以参考 本章是去答案版本。带答案的版本在下…...

2024年11月中旬记录

11.11 pigz的使用 压缩文件夹命令&#xff1a; tar -cvf - dir_name | pigz > xxx.tar.gz 解压分两步&#xff0c;pigz解压和tar解压&#xff1a; pigz -d xxx.tar.gz tar -xf xxx.tar...

单体架构 IM 系统之长轮询方案设计

在上一篇技术短文&#xff08;单体架构 IM 系统之核心业务功能实现&#xff09;中&#xff0c;我们讨论了 “信箱模型” 在单体架构 IM 系统中的应用&#xff0c;“信箱模型” 见下图。 客户端 A 将 “信件” 投入到客户端 B 的 “信箱” 中&#xff0c;然后客户端 B 去自己的 …...

Android Studio加载旧的安卓工程项目报错处理

文章目录 Invalid Gradle JDK configuration foundNDK not configuredCMake 3.10.2 was not found安装cmake适配cmake版本号 com.intellij.openapi.externalSystem.model.ExternalSystemExceptiongradle版本过低或下载不了下载gradle与依赖库超时替换gradle国内源替换Maven 仓库…...

阿里公告:停止 EasyExcel 更新与维护

最近&#xff0c;阿里发布公告通知&#xff0c;将停止对知名 Java Excel 工具库 EasyExcel 的更新和维护。EasyExcel 由阿里巴巴开源&#xff0c;作者是玉箫&#xff0c;在 GitHub 上拥有 30k stars、7.5k forks 的高人气。 据悉&#xff0c;EasyExcel 作者玉箫去年已从阿里离…...

Spring 中的 BeanWrapper

BeanWrapper 是 Spring 框架中的一个接口&#xff0c;它提供了一种方式来设置和获取 JavaBean 的属性。JavaBean 是一种特殊的 Java 类&#xff0c;遵循特定的编码约定&#xff08;例如&#xff0c;私有属性和公共的 getter/setter 方法&#xff09;&#xff0c;通常用于封装数…...

2024鹏城杯msic部分WP

MISC 网安第一课 查找字符key&#xff0c;发现key1&#xff0c;但是没看到key2 后缀改为zip&#xff0c;打开以后发现不一样的地方&#xff0c;三张图片和一个misc文件夹 图片放到010看一眼 编号为1的图片在文件尾发现key2 misc文件夹中是一个out.pcb&#xff0c;放到010发现…...

DAY23|回溯算法Part02|LeetCode: 39. 组合总和 、40.组合总和II 、131.分割回文串

目录 LeetCode: 39. 组合总和 基本思路 C代码 LeetCode: 40.组合总和II 基本思路 C代码 LeetCode: 131.分割回文串 基本思路 C代码 LeetCode: 39. 组合总和 力扣代码链接 文字讲解&#xff1a;LeetCode: 39. 组合总和 视频讲解&#xff1a;带你学透回溯算法-组合总和…...

go map

1、数据结构 // A header for a Go map. type hmap struct {// Note: the format of the hmap is also encoded in cmd/compile/internal/reflectdata/reflect.go.// Make sure this stays in sync with the compilers definition.count int // # live cells size of map.…...

三十七、Python基础语法(异常)

在 Python 中&#xff0c;异常是在程序执行过程中发生的错误情况。当出现异常时&#xff0c;程序的正常执行流程会被中断&#xff0c;并尝试寻找相应的异常处理机制来处理这个错误。 一、异常的类型 Python 中有很多内置的异常类型&#xff0c;例如&#xff1a; ZeroDivision…...

ThreadLocal的熟悉与使用

目录 1.ThreadLocal介绍2.ThreadLocal源码解析2.1 常用方法2.2 结构设计2.3 类图2.4 源码分析2.4.1 set方法分析2.4.2 get方法分析2.4.3 remove方法分析 3.ThreadLocal内存泄漏分析3.1 相关概念3.1.1 内存溢出3.1.2 内存泄漏3.1.3 强引用3.1.4 弱引用 3.2 内存泄漏是否和key使用…...

如何使用 Puppeteer 和 Browserless 抓取亚马逊产品数据?

您可以在亚马逊上找到所有有关产品、卖家、评论、评分、特价、新闻等的相关且有价值的信息。无论是卖家进行市场调研还是个人收集数据&#xff0c;使用高质量、便捷且快速的工具将极大地帮助您准确地抓取亚马逊上的各种信息。 为什么抓取亚马逊产品数据很重要&#xff1f; 亚…...

使用Python求解经典“三门问题”,揭示概率的奇妙之处

三门问题&#xff08;Monty Hall Problem&#xff09;是经典的概率问题&#xff0c;描述了一位游戏选手在三个门中选择一扇门&#xff0c;其中一扇门后有奖品&#xff0c;其余两扇门后是空的。选手做出选择后&#xff0c;主持人会打开另一扇空门&#xff0c;然后给选手一次更改…...

西安知名网站制作公司/360搜索首页网址是多少

习题1:一个列表,排重,不能用set,也不能用字典 算法: 1、生成一个空列表result,存储排重后的元素 2、遍历列表的每一个元素,判断是否在result列表里面,如果不在,就添加到result列表中 3、如果在,不做任何操作 4、打印result列表 l=[1,2,3,4,1,2,3,4,1,2] result=[] fo…...

寻找网站建设推广/google高级搜索

关系型数据库 MySQL MySQL 是一个最流行的关系型数据库&#xff0c;在互联网产品中应用比较广泛。一般情况下&#xff0c;MySQL 数据库是选择的第一方案&#xff0c;基本上有 80% ~ 90% 的场景都是基于 MySQL 数据库的。因为&#xff0c;需要关系型数据库进行管理&#xff0c;此…...

如何做企业介绍/云速seo百度点击

2019独角兽企业重金招聘Python工程师标准>>> Redis的事务 是什么Redis的事务 可以一次执行多个命令&#xff0c;本质是一组命令的集合。一个事务中的所有命令都会序列化&#xff0c;按顺序地串行化执行而不会被其它命令插入&#xff0c;不许加塞噢&#xff1a;&…...

网站到期请续费/湖南企业seo优化报价

今天在做一个效果的时候&#xff0c;由于子视图和父视图都有响应的事件&#xff0c;子视图的事件理所当然被父视图拦截掉了&#xff0c;接下来就做分析解决 1. tableviewcell可以触发点击&#xff0c;同时tableview的父视图有点击识别&#xff0c;这样点击的时候就会产生冲突。…...

东莞网站设计制作教程/google服务框架

JAVA项目实现授权部署 (一)请注意&#xff1a;这个只是个比较low的实现&#xff0c;如果那种考虑用户懂代码&#xff0c;又拿到源码的&#xff0c;别看这个了还是。对我们来说&#xff0c;拿到源码&#xff0c;没有什么破不了的&#xff0c;只不过是时间问题&#xff0c;对不&a…...

win8导航网站模板/广告公司取名字参考大全

德这个东西&#xff0c;空洞,难量化 不同的组织&#xff0c;机构&#xff0c;不同的国家&#xff0c;种族&#xff0c;民族&#xff0c;不同的宗教 标准不同&#xff0c;同一件事放在不同的时代&#xff0c;评价可能截然相反 毁人誉己是违反道德的一个具体案例 人的一生要经历多…...