从零学Java MySQL

MySQL

文章目录

  • MySQL
    • 初识数据库
      • 思考:
      • 1 什么是数据库?
      • 2 数据库管理系统
    • 初识MySQL
    • MySQL卸载
    • MySQL安装
      • 1 配置环境变量
      • 2 MySQL目录结构及配置文件
    • 连接MySQL数据库
    • 基本命令
      • MySQL基本语法:
      • 1 查看MySQL服务器中所有数据库
      • 2 创建数据库
      • 3 查看数据库创建信息
      • 4 修改数据库编码
      • 5 删除数据库
      • 6 查看当前所使用的数据库
      • 7 切换使用数据库
    • 客户端工具

初识数据库

思考:

现阶段数据存储方式有哪些?

  • 变量、数组、对象、集合,数据保存在内存中:瞬时状态。
  • 文件存储:持久化状态。

以上存储方式有缺点吗?

  • 存储数据量级小。
  • 没有访问安全限制。
  • 没有备份、恢复机制。

1 什么是数据库?

概念:

  • 按照数据结构来组织、存储和管理数据的仓库。
  • 是一个长期存储在计算机内的、有组织的、有共享的、统一管理的数据集合。

数据库的分类:

结构描述
网状结构以节点形式存储和访问。
层次结构定向有序的树状结构实现存储和访问。
关系结构Oracle、DB2、MySQL、SQL Server,以表格(Table)存储,多表间建立关联关系,通过分类、合并、连接、选取等运算实现访问。
非关系结构【NoSQL】ElastecSearch、MongoDB、Redis,多数使用哈希表,表中以键值(key-value)的方式实现特定的键和一个指针指向的特定数据。

2 数据库管理系统

**概念:**操作和管理数据库的大型软件,用于建立、使用和维护数据库。

常见的数据库管理系统(DBMS):

数据库管理系统描述
Oracle被认为是业界目前比较成功的关系型数据库管理系统。
DB2DB2数据库系统采用多进程多线索体系结构,其功能足以满足大中公司的需要。
SQL ServerMicrosoft 公司推出的关系型数据库管理系统。
SQLLite应用在手机端的数据库。

初识MySQL

**概念:**广泛使用的关系型数据库管理系统。

  • 1995发布MySQL1.0
  • 2000成立MySQL AB公司
  • 2005发布MySQL5.0
  • 2008被Sun公司收购,发布MySQL5.1
  • 2009Sun被Oracle收购,2010发布MySQL5.5

背景:

  • 由瑞典MySQL AB公司开发,现属于Oracle旗下产品。
  • 是当下最流行的关系型数据库之一。

官网:https://www.mysql.com/

下载地址:https://dev.mysql.com/downloads/mysql/

MySQL卸载

方式1:一般卸载方法停止服务:

  1. 使用services.msc命令打开服务,找到mysql57关闭。
  2. 控制面板卸载
  3. 删除文件夹
    • 安装位置 program files
    • 数据位置 ProgramData
  4. 检查服务
    • 如果没有删除,手动删除,sc delete mysql57,使用管理员身份运行cmd。

方式2:使用安装包卸载:【推荐】

  • 再次启动安装包,卸载所有组件即可。

MySQL安装

1 配置环境变量

Windows:【可选】

  • MYSQL_HOME:

    C:\Program Files\MySQL\MySQL Server 5.7

  • PATH:

    追加 %MYSQL_HOME%\bin

编码配置:

  • C:\ProgramData\MySQL\MySQL Server 5.7中打开my.ini文件
    • default-character-set=utf8mb4
    • character-set-server=utf8mb4

注意:

  • ProgramData文件夹可能被隐藏
  • 修改后重启MySQL服务

2 MySQL目录结构及配置文件

核心文件:

文件夹名称内容
bin命令、程序文件
lib库文件
include头文件
share错误信息和字符集文件

连接MySQL数据库

通过cmd控制台连接数据库:

  • 输入mysql -u root -p
Microsoft Windows [版本 10.0.22621.3007]
(c) Microsoft Corporation。保留所有权利。

C:\Users\胡昊龙>mysql -u root -p
Enter password: ****
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.7.25-log MySQL Community Server (GPL)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

基本命令

MySQL基本语法:

  • MySQL每条命令或语句通常以;结尾;个别可以不用加分号,比如use、quit、exit。
  • MySQL语句不区分大小写。
  • MySQL字符串、日期使用单引号或双引号包裹。
  • MySQL注释:
    • 单行注释:#开头或者–空格开头
    • 多行注释: /多行注释/

1 查看MySQL服务器中所有数据库

  • show databases;

    mysql> #查看MySQL服务器中所有数据库
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | java2308_db1       |
    | java2308_db2       |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    6 rows in set (0.00 sec)
    
数据库名称描述
information_schema信息数据库,其中保存着关于所有数据库的信息(元数据)。元数据是关于数据的数据,如数据库名或表名,列的数据类型,或访问权限等。
mysql核心数据库,主要负责存储数据库的用户、权限设置、关键字等,以及需要使用的控制和管理信息,不可以删除。
performance_schema性能优化的数据库,MySQL5.5版本中新增的一个性能优化的引擎。
sys系统数据库,MySQL5.7版本中新增的可以快速的了解元数据信息的系统库。便于发现数据库的多样信息,解决性能瓶颈问题。

2 创建数据库

  • create database 数据库名;

    • 最经常使用的创建方式;

      mysql> #创建数据库
      mysql> create database java2308_db1;
      Query OK, 1 row affected (0.00 sec)
      
  • create database 数据库名 character set utf8mb4;

    • 创建数据库, 并指定数据库编码;

      mysql> #创建数据库并设置数据库编码
      mysql> create database java2308_db3 character set utf8mb4;
      Query OK, 1 row affected (0.00 sec)
      
      mysql> show create database java2308_db3;
      +--------------+--------------------------------------------------------------------------+
      | Database     | Create Database                                                          |
      +--------------+--------------------------------------------------------------------------+
      | java2308_db3 | CREATE DATABASE `java2308_db3` /*!40100 DEFAULT CHARACTER SET utf8mb4 */ |
      +--------------+--------------------------------------------------------------------------+
      1 row in set (0.00 sec)
      
  • create database if not exists 数据库名;

    • 如果该数据库已经存在,该语句将不会执行任何操作。
      如果该数据库不存在,那么这个语句将会创建一个新的数据库。

      mysql> create database if not exists java2308_db1;
      Query OK, 1 row affected, 1 warning (0.00 sec)
      mysql> create database if not exists java2308_db2;
      Query OK, 1 row affected (0.00 sec)
      

3 查看数据库创建信息

  • show create database 数据库名;

    mysql> #查看数据库创建信息
    mysql> show create database java2308_db1;
    +--------------+--------------------------------------------------------------------------+
    | Database     | Create Database
                              |
    +--------------+--------------------------------------------------------------------------+
    | java2308_db1 | CREATE DATABASE `java2308_db1` /*!40100 DEFAULT CHARACTER SET utf8mb4 */ |
    +--------------+--------------------------------------------------------------------------+
    1 row in set (0.00 sec)
    

4 修改数据库编码

  • alter database 数据库名 character set GBK;

    mysql> #修改数据库编码
    mysql> alter database java2308_db3 character set GBK;
    Query OK, 1 row affected (0.00 sec)
    
    mysql> show create database java2308_db3;
    +--------------+----------------------------------------------------------------------+
    | Database     | Create Database                                                      |
    +--------------+----------------------------------------------------------------------+
    | java2308_db3 | CREATE DATABASE `java2308_db3` /*!40100 DEFAULT CHARACTER SET gbk */ |
    +--------------+----------------------------------------------------------------------+
    1 row in set (0.00 sec)
    

5 删除数据库

  • drop database 数据库名;

    mysql> #删除数据库
    mysql> drop database java2308_db3;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | java2308_db1       |
    | java2308_db2       |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    6 rows in set (0.00 sec)
    

6 查看当前所使用的数据库

  • select database();

    mysql> #查看当前所使用的数据库
    mysql> select database();
    +------------+
    | database() |
    +------------+
    | NULL       |
    +------------+
    1 row in set (0.00 sec)
    

7 切换使用数据库

  • use 数据库名;

    mysql> #切换使用数据库
    mysql> use java2308_db2;
    Database changed
    mysql> #查看当前所使用的数据库
    mysql> select database();
    +--------------+
    | database()   |
    +--------------+
    | java2308_db2 |
    +--------------+
    1 row in set (0.00 sec)
    

客户端工具

Navicat

  • 快速、可靠、价格便宜的数据库管理工具。
  • 专为简化数据库的管理及降低系统管理成本而设。

在这里插入图片描述

SQLyog

  • SQLyog提供了完整的图形界面
  • 拥有广泛的预定义工具和查询、友好的视觉界面、类似 Excel 的查询结果编辑界面等优点。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

12.前端--CSS-背景属性

1.背景颜色 样式名称: background-color 定义元素的背景颜色 使用方式: background-color:颜色值; 其他说明: 元素背景颜色默认值是 transparent(透明)      background-color:transparent; 代码演示: 背景色…

【裁员潮】技术变革下的职业危机,程序员会有多大影响,又应该如何面对

大家好,我是全栈小5,欢迎阅读文章! 此篇是【话题达人】序列文章,这一次的话题是《技术变革下的裁员潮》 文章将以博主的角度进行讲述,理解和水平有限,不足之处,望指正。 目录 背景硬实力职业危机…

推荐收藏!48道数据分析师高频面试题汇总!

大家好,最近很多小伙伴私信我,讲一下数据分析的面试题,今天给大家整理了48道数据分析师面试时被频繁问到的题目,找数据分析岗位的同学一定要码住认真看。 想了解最新的面试动态、最新高频考点、技术交流的同学,可以文…

notepad++ v8.5.3 安装插件,安装失败怎么处理?下载进度为0怎么处理?

notepad v8.5.3 安装插件,安装失败?下载进度为0,怎么处理? 安装 进度 进度条没有进度 ,然后就退出了,自动打开程序,不知道什么问题,插件管理下面也没有插件显示 找到问题了&#x…

C++ 数论相关题目(欧拉函数)

欧拉函数 给定 n 个正整数 ai ,请你求出每个数的欧拉函数。 欧拉函数的定义 1∼N 中与 N 互质的数的个数被称为欧拉函数,记为 ϕ(N) 。 若在算数基本定理中,Npa11pa22…pamm ,则: ϕ(N) Np1−1p1p2−1p2…pm−1pm 输…

BGP路由反射-数据中心IDC项目经验

一、背景描述 R1,R2,R3在AS200区域内,R1和R2,R1和R3建立OSPF,宣告接口互联. AS200区域内,R1和R2建立IBGP, R1和R3建立IBGP R2和R4建立EBGP, R3和R5建立EBGP。 网络拓扑: 二、故障现象 R1和R2可以收到来自AS100区域R4的E…

技术驱动宠物健康:宠物在线问诊系统的高效搭建手册

在数字化时代,技术正在催生出许多创新的医疗服务,而宠物在线问诊系统便是其中一项引领潮流的创举。本文将为你提供一份高效搭建宠物在线问诊系统的手册,通过技术代码示例,让你轻松打造一套技术驱动的宠物健康管理系统。 1. 架构…

CSS 楼梯弹弹球

<template><view class="loader"></view> </template><script></script><style>body {background-color: #212121;/* 设置背景颜色为 #212121 */}.loader {position: relative;/* 设置定位为相对定位 */width: 120px;/* 设…

Linux之快速入门

一、Linux目录结构 从Windows转到Linux最不习惯的是什么&#xff1a; 目录结构 Windows会分盘&#xff0c;想怎么放东西就怎么放东西&#xff0c;好处自由&#xff0c;缺点容易乱 Linux有自己的目录结构&#xff0c;不能随随便便放东西 /&#xff1a;根目录/bin:二进制文件&…

【学术论文写作】 鲁棒性实验写作的行文逻辑

文章目录 一、声明二、行文思路三、示例范文一范文二 一、声明 自己总结的&#xff0c;有问题望指正&#xff01; 二、行文思路 为什么要做鲁棒性测试怎么做实验结论对结果的解释 三、示例 PPT 范文一 2022, TIM, “A Robust and Reliable Point Cloud Recognition Netw…

【C++干货铺】C++中的四种类型转换

个人主页点击直达&#xff1a;小白不是程序员 C系列专栏&#xff1a;C干货铺 代码仓库&#xff1a;Gitee 目录 C语言中的类型转换 为什么C需要四种类型转化 C强制类型转换 static_cast reinterpret_cast const_cast dynamic_cast RTTI C语言中的类型转换 在C语言中&…

建议CSDN不要这样吃人xue馒头

程序员裁员潮&#xff1a;技术变革下的职业危机 2023年以来&#xff0c;谷歌、阿里巴巴各个科技公司都在裁员&#xff0c;程序员的日子也不好过。 讨论在技术变革下&#xff0c;裁员对于程序员的影响到底有多大&#xff0c;是非常有意义的话题&#xff0c;但是为什么要用“一…

一些es的基本操作

目录 给索引增加字段&#xff1a;给索引删除字段[^1]&#xff1a;创建索引&#xff1a;插入document删除document(应该是按ID) : 给索引增加字段&#xff1a; 用postMan: 给名为population_portrait_hash_seven的索引增加了一个text类型的字段。 用chrome插件Elasticvue 的Re…

MySql索引事务讲解和(经典面试题)

&#x1f3a5; 个人主页&#xff1a;Dikz12&#x1f525;个人专栏&#xff1a;MySql&#x1f4d5;格言&#xff1a;那些在暗处执拗生长的花&#xff0c;终有一日会馥郁传香欢迎大家&#x1f44d;点赞✍评论⭐收藏 目录 索引 概念 索引的相关操作 索引内部数据结构 事务 为…

【软考】位示图

目录 一、基本概念二、位示图 一、基本概念 1.要将文件保存到外部存储器&#xff08;外存或辅存&#xff09;&#xff0c;首先得知道存储空间的使用情况 2.要清楚哪个物理块已经被占用&#xff0c;哪个物理块是空闲的 3.当对大容量的磁盘存储空间被多用户共享时&#xff0c;用户…

深度学习——pycharm远程连接

目录 远程环境配置本地环境配置&#xff08;注意看假设&#xff01;&#xff01;!这是很多博客里没写的&#xff09;步骤1步骤2步骤2.1 配置Connection步骤2.2 配置Mappings 步骤3 配置本地项目的远程解释器技巧1 pycharm中远程终端连接技巧2 远程目录技巧3 上传代码文件技巧4 …

(二)MySQL安装与部署(redhat9)

前言 MySQL仅仅是一个产品&#xff0c;Oracle旗下的小型数据库。广泛应用在中小型项目中&#xff0c;特征体积小速度快整体成本低。尤其是开源&#xff0c;所以很多中小型项目为了降低成本纷纷选用MySql作为数控存储介质 MySql的特征 底层语言使用C、C编写的。并且使用多种编…

学单片机前先学什么?

学单片机前先学什么&#xff1f; 在开始前我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「单片机的资料从专业入门到高级教程」&#xff0c; 点个关注在评论区回复“888”之后私信回复“888”&#xff0c;全部无偿共享给大家&#xff01;&#xff01;&#xff…

.git 文件夹结构解析

.git 文件夹结构解析 在这篇文章就让我们来看看这个 Git 仓库里的文件分别都是用来干什么的&#xff0c;以及在执行了相关的 Git 命令后这些文件会如何响应。 hooks&#xff08;钩&#xff09;&#xff1a;存放一些shell脚本info&#xff1a;存放仓库的一些信息logs&#xff…

Laya2.13.3接入FGUI

下载与复制文件与Laya1.x类似&#xff0c;可以看我上一篇&#xff1a; Laya1.8.4接入FariyGui&#xff0c;以及其中踩的坑-CSDN博客 不同的是&#xff1a; 两个库文件需要在index.js中引入 新建一个脚本将fgui中搭建好的UI包引入&#xff1a; export default class GameApp…