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

今天我们来学习一下关于MySQL数据库

目录

前言:

1.MySQL定义:

1.1基础概念:

1.1.1数据库(Database):

1.1.2表(Table):

1.1.3记录(Record)与字段(Field):

1.2技术特性:

1.2.1结构化查询语言(SQL):

1.2.2事务处理:

1.2.3索引与查询优化:

1.3应用与优势:

1.3.1开源与免费:

1.3.2跨平台兼容性:

1.3.3广泛的应用场景:

1.3.4强大的社区支持:

1.4高级特性与扩展:

1.4.1存储过程与函数:

1.4.2触发器与视图:

1.4.3复制与分区:

1.4.4安全性与权限管理:

2.SQL语句:

 2.1数据查询语言(DQL, Data Query Language):

2.1.1主要用于查询数据库中的数据。

2.1.2代表关键字是 SELECT。

2.1.3常见用法包括简单查询、连接查询、子查询等。

2.2数据定义语言(DDL, Data Definition Language):

2.2.1用于定义或修改数据库结构,包括创建、修改和删除表、索引等数据库对象。

2.2.2代表关键字有 CREATE、ALTER、DROP 等。

2.2.3例如,使用 CREATE TABLE 语句创建新表,使用 ALTER TABLE 语句修改表结构。

2.3数据操纵语言(DML, Data Manipulation Language):

2.3.1用于插入、更新、删除数据库中的数据。

2.3.2代表关键字有 INSERT、UPDATE、DELETE。

2.3.3例如,使用 INSERT INTO 语句向表中插入新数据,使用 UPDATE 语句修改表中的数据。

2.4数据控制语言(DCL, Data Control Language):

2.4.1用于控制对数据库中数据的访问权限。

2.4.2代表关键字有 GRANT、REVOKE 等。

2.4.3例如,使用 GRANT 语句赋予用户访问数据库的权限,使用 REVOKE 语句撤销用户的访问权限。

2.5事务控制语言(TCL, Transaction Control Language):

2.5.1用于管理数据库事务,确保数据的完整性和一致性。

2.5.2代表关键字有 COMMIT、ROLLBACK、SAVEPOINT 等。

2.5.3例如,使用 COMMIT 语句提交事务,使用 ROLLBACK 语句回滚事务到某个状态。

3.DDL之数据库操作:database:

3.1.创建数据库

3.2 查看数据库:

3.2.1查看当前用户的所有数据库:

3.2.2 查看某个数据库的定义信息:

3.3 删除数据库

 3.4.修改正在使用的数据库:


前言:

在前面我们我们已经学习了关于tcp/ip协议今天我们来学习一下关于MySQL数据库。希望通过这篇文章能够让大家都能够有所收获,能对MySQL数据库有一个更深刻的理解和认识。这些内容都是我个人关于学习的一些见解,希望大家多多包涵,也欢迎大家在评论区和谐讨论。

1.MySQL定义:

MySQL是一个开源的关系型数据库管理系统,它使用结构化查询语言(SQL)进行数据库操作。MySQL数据库是按照数据结构来组织、存储和管理数据的仓库,支持大量的数据存储,并提供高效的数据检索、定义、管理、维护等功能。

1.1基础概念:

1.1.1数据库(Database)

数据库是按照数据结构来组织、存储和管理数据的仓库。在MySQL中,数据库是表的集合,用于存储特定应用或项目的所有数据。

1.1.2表(Table)

表是数据库的基本存储单位,由行和列组成。每一行代表一条记录,每一列代表一个字段。字段定义了数据的类型和约束。

1.1.3记录(Record)与字段(Field)

记录是表中的一行数据,字段则是表中的一列数据。记录由多个字段组成,每个字段存储特定类型的数据。

1.2技术特性:

1.2.1结构化查询语言(SQL)

MySQL使用SQL作为查询语言,用于执行数据的增删改查等操作。SQL是一种标准化的语言,易于学习和使用。

1.2.2事务处理

MySQL支持事务处理,确保数据的完整性和一致性。通过ACID属性(原子性、一致性、隔离性、持久性),MySQL提供了可靠的数据处理机制。

1.2.3索引与查询优化

MySQL提供索引功能,以加速数据的检索速度。同时,MySQL还具备查询优化器,能够自动优化查询语句的执行计划,提高查询效率。

1.3应用与优势:

1.3.1开源与免费

MySQL是一个开源项目,可以免费使用和修改。这降低了企业的成本,并促进了技术的共享与发展。

1.3.2跨平台兼容性

MySQL可以在多种操作系统上运行,如Windows、Linux、Unix等。这使得开发者可以根据项目需求选择合适的操作系统环境。

1.3.3广泛的应用场景

由于MySQL的稳定性和高效性,它被广泛应用于各种场景,如网站开发、企业级应用、数据分析等。许多知名公司如Facebook、淘宝等都使用MySQL作为其后端数据库。

1.3.4强大的社区支持

MySQL拥有庞大的用户社区和丰富的文档资源。开发者可以在社区中寻求帮助、分享经验并获取最新的技术动态。

1.4高级特性与扩展:

1.4.1存储过程与函数

MySQL支持存储过程和函数,允许开发者在数据库中编写复杂的业务逻辑,减少网络传输和提高处理效率。

1.4.2触发器与视图

MySQL提供触发器和视图功能,用于在数据变更时自动执行特定操作或简化复杂查询的表示。

1.4.3复制与分区

MySQL支持数据复制功能,可以实现数据的备份和负载均衡。同时,MySQL还支持表分区功能,可以将大表拆分成多个小表以提高查询性能和管理效率。

1.4.4安全性与权限管理

MySQL提供强大的安全性功能,如访问控制、加密通信等。同时,MySQL还支持细粒度的权限管理功能,可以精确控制用户对数据库的访问权限和操作范围。

总之MySQL是一个功能强大、灵活且易于使用的关系型数据库管理系统。它的开源性质、广泛的平台支持、强大的社区和丰富的功能使其成为许多应用程序的首选数据库解决方案。无论是小型项目还是大型企业级应用,MySQL都能提供可靠的数据存储和处理能力。

2.SQL语句:

SQL(Structured Query Language,结构化查询语言)是用于管理关系型数据库的标准编程语言。SQL语句可以根据其功能进行分类,主要分为以下几类:

 2.1数据查询语言(DQL, Data Query Language)

2.1.1主要用于查询数据库中的数据。

2.1.2代表关键字是 SELECT

2.1.3常见用法包括简单查询、连接查询、子查询等。

示例:查询employees表中所有员工的姓名和工资。

SELECT first_name, last_name, salary FROM employees;

2.2数据定义语言(DDL, Data Definition Language)

2.2.1用于定义或修改数据库结构,包括创建、修改和删除表、索引等数据库对象。

2.2.2代表关键字有 CREATEALTERDROP 等。

2.2.3例如,使用 CREATE TABLE 语句创建新表,使用 ALTER TABLE 语句修改表结构。

 示例:创建一个名为employees的表,包含idfirst_namelast_namesalary字段。

CREATE TABLE employees (  id INT PRIMARY KEY AUTO_INCREMENT,  first_name VARCHAR(50),  last_name VARCHAR(50),  salary DECIMAL(10, 2)  
);

2.3数据操纵语言(DML, Data Manipulation Language)

2.3.1用于插入、更新、删除数据库中的数据。

2.3.2代表关键字有 INSERTUPDATEDELETE

2.3.3例如,使用 INSERT INTO 语句向表中插入新数据,使用 UPDATE 语句修改表中的数据。

示例:向employees表中插入一条新记录。

INSERT INTO employees (first_name, last_name, salary) VALUES ('John', 'Doe', 5000.00);

 示例:删除employees表中John Doe的记录。

DELETE FROM employees WHERE first_name = 'John' AND last_name = 'Doe';

2.4数据控制语言(DCL, Data Control Language)

2.4.1用于控制对数据库中数据的访问权限。

2.4.2代表关键字有 GRANTREVOKE 等。

2.4.3例如,使用 GRANT 语句赋予用户访问数据库的权限,使用 REVOKE 语句撤销用户的访问权限。

示例:授予用户usernameemployees表的查询权限。

GRANT SELECT ON database_name.employees TO 'username'@'host';

2.5事务控制语言(TCL, Transaction Control Language)

2.5.1用于管理数据库事务,确保数据的完整性和一致性。

2.5.2代表关键字有 COMMITROLLBACKSAVEPOINT 等。

2.5.3例如,使用 COMMIT 语句提交事务,使用 ROLLBACK 语句回滚事务到某个状态。

示例:开始一个新事务。 

START TRANSACTION;

3.DDL之数据库操作:database:

DDL与DML(数据操纵语言)不同,DML主要处理数据的增删改查(如INSERT、UPDATE、DELETE、SELECT等),而DDL关注数据库模式的修改,即数据结构的更改。

3.1.创建数据库

create database 数据库名;

例如:

create database test;

如果想要指定数据库中的数据编码:

create database 数据库名 character set 字符集;

3.2 查看数据库:

3.2.1查看当前用户的所有数据库:

show databases;

3.2.2 查看某个数据库的定义信息:

show create database 数据库名;

3.3 删除数据库

drop database 数据库名;

 3.4.修改正在使用的数据库:

3.4.1查看正在使用的数据库:

select database();

3.4.2切换数据库:

use 数据库名;

结语:

今天我们就先分享到这里,关于MySQL数据库其实还有一些内容,不过由于时间的关系,今天先分享到这里关于我的博文同时也欢迎大家对我的文章进行点评,也欢迎各位大佬在评论区和谐讨论。

相关文章:

今天我们来学习一下关于MySQL数据库

目录 前言: 1.MySQL定义: 1.1基础概念: 1.1.1数据库(Database): 1.1.2表(Table): 1.1.3记录(Record)与字段(Field): …...

长期护理保险可改善老年人心理健康 | CHARLS CLHLS CFPS 公共数据库周报(3.6)...

欢迎报名2024年“真实世界临床研究”课程! 本周郑老师开讲:“真实世界临床研究”培训班,3月16-17日两天,欢迎报名! CHARLS公共数据库‍ CHARLS数据库简介中国健康与养老追踪调查(China Health and Retirement Longitud…...

49、C++/友元、常成员函数和常对象、运算符重载学习20240314

一、封装类 用其成员函数实现&#xff08;对该类的&#xff09;数学运算符的重载&#xff08;加法&#xff09;&#xff0c;并封装一个全局函数实现&#xff08;对该类的&#xff09;数学运算符的重载&#xff08;减法&#xff09;。 代码&#xff1a; #include <iostream…...

SQL Server错误:15404

执行维护计划失败&#xff0c;提示SQL Server Error 15404 无法获取有关... 异常如下图&#xff1a; 原因&#xff1a;数据库用户名与计算机名称不一致 解决办法&#xff1a;1.重名称数据库用户名 将前缀改成计算机名 2.重启SQL Server代理...

Halcon文件操作

1、Region读写操作 region&#xff08;区域&#xff09;是一种重要的数据类型&#xff0c;用于表示图像中的特定区域。这些区域可以代表图像中的目标、感兴趣的区域、边缘、形状等等 read_image (Image, printer_chip/printer_chip_01) dev_open_window (0, 0, 512, 512, black…...

【测试知识】业务面试问答突击版1

高内聚低耦合 高内聚指的是将相关的功能或数据组织在一起&#xff0c;使得模块内部的各个元素紧密地联系在一起&#xff0c;完成特定的任务。 低耦合指的是模块之间的依赖关系尽可能地降低&#xff0c;模块之间的接口简单清晰&#xff0c;减少模块之间的相互影响。 文章目录 整…...

使用el-row及el-col页面缩放时出现空行解决方案

问题&#xff1a; 当缩放到90%或者110%&#xff0c;选中下拉后&#xff0c;下方就会出现空行 如下图所示&#xff1a; 关于el-row 和 el-col &#xff1a; 参数说明类型可选值默认值span栅格占据的列数number—24offset栅格左侧的间隔格数number—0push栅格向右移动格数number…...

java中几种对象存储(文件存储)中间件的介绍

一、前言 在博主得到系统中使用的对象存储主要有OSS&#xff08;阿里云的对象存储&#xff09; COS&#xff08;腾讯云的对象存储&#xff09;OBS&#xff08;华为云的对象存储&#xff09;还有就是MinIO 这些玩意。其实这种东西大差不差&#xff0c;几乎实现方式都是一样&…...

网络工程师——2024自学

一、怎样从零开始学习网络工程师 当今社会&#xff0c;人人离不开网络。整个IT互联网行业&#xff0c;最好入门的&#xff0c;网络工程师算是一个了。 什么是网络工程师呢&#xff0c;简单来说&#xff0c;就是互联网从设计、建设到运行和维护&#xff0c;都需要网络工程师来…...

SwiftUI的Picker

SwiftUI的Picker 本章来记录一下SwiftUI中三种不同Picker的用法 &#xff0c;分别为normalPicker &#xff0c; wheelPicker&#xff0c; segmentedPicker 。可以根据不同需求展示不同的Picker import SwiftUIstruct PickerBootCamp: View {State var selection: String &quo…...

物联网技术助力智慧城市转型升级:智能、高效、可持续

目录 一、物联网技术概述及其在智慧城市中的应用 二、物联网技术助力智慧城市转型升级的路径 1、提升城市基础设施智能化水平 2、推动公共服务智能化升级 3、促进城市治理现代化 三、物联网技术助力智慧城市转型升级的成效与展望 1、成效显著 2、展望未来 四、物联网技…...

YOLOv7_pose-Openvino和ONNXRuntime推理【CPU】

纯检测系列&#xff1a; YOLOv5-Openvino和ONNXRuntime推理【CPU】 YOLOv6-Openvino和ONNXRuntime推理【CPU】 YOLOv8-Openvino和ONNXRuntime推理【CPU】 YOLOv7-Openvino和ONNXRuntime推理【CPU】 YOLOv9-Openvino和ONNXRuntime推理【CPU】 跟踪系列&#xff1a; YOLOv5/6/7-O…...

通过ACPI检测沙箱-反虚拟机

ACPI & ACPI table ACPI 表示高级配置和电源管理接口&#xff08;Advanced Configuration and Power Management Interface&#xff09;&#xff0c;对于Windows2000&#xff0c;ACPI定义了Windows2000、BIOS和系统硬件之间的新型工作接口。这些新接口包括允许Windows 200…...

计算点集的最小外接矩形——OpenCV的minAreaRect函数

计算点集的最小外接矩形——OpenCV的minAreaRect函数 函数原型 输入一系列二维点&#xff0c;返回其最小外接矩形。 RotatedRect minAreaRect( InputArray points );根据函数原型&#xff0c;输入的数据可以是vector<Point>类型&#xff0c;包含1个以上的点&#xff1…...

Stripe Web 购买集成

图片被吞了可以来这里看&#xff1a;https://juejin.cn/post/7346388511338381364 1. 准备事项 Stripe 账号域名以及配套的网站Stripe 账号付款信息公钥和私钥 2. 配置产品以及价格 可以通过 API 或者 Stripe 管理后台来进行配置 产品&#xff1a;就是商品&#xff0c;只需…...

加密货币在网络违法犯罪活动中的利用情况调查

一、调查背景 区块链基于分布式共识和经济激励等手段&#xff0c;在开放式、无许可的网络空间中&#xff0c;为价值的确立、存储、转移提供了新的解决方案。然而随着加密生态在过去若干年的快速发展&#xff0c;加密货币也越来越多地被用于各类风险活动&#xff0c;为网络赌博…...

【测试知识】业务面试问答突击版3---bug、测试用例设计

文章目录 一个完整的缺陷报告包含一个完整的测试用例包含一个完整的测试计划包含缺陷严重等级简述等价类划分法并举例简述边界值分析法逻辑覆盖针对具体场景的测试用例设计软件中存在多个分支时如何设计测试用例静态代码检查什么白盒测试是&#xff1f;常用方法是&#xff1f; …...

使用大型语言模型进行实体提取

原文地址&#xff1a;Using A Large Language Model For Entity Extraction LLM 能否比传统 NLP 方法更好地提取实体&#xff1f; 2022 年 7 月 12 日 Large Language Models for Generative Information Extraction: A Survey 实体简介 使用Co:here大型语言模型。 实体可以被视…...

基础:TCP是什么?

1. TCP 是什么&#xff1f; TCP&#xff08;Transmission Control Protocol 传输控制协议&#xff09; 是一种面向连接的、可靠的、基于字节流的传输层通信协议&#xff0c;由IETF的RFC 793 [1]定义。 TCP旨在适应支持多网络应用的分层协议层次结构。连接到不同但互连的计算机…...

el-table中 el-popover 性能优化

场景&#xff1a;在 el-table 中使用 el-popover ,出现了 loading 加载卡顿的问题&#xff0c;接口返回的数据的时间大概是 140ms &#xff0c;所以不是接口慢的原因&#xff1b;通过对表中结构的逐步排查&#xff0c;发现是表中的 某一行 所影响的&#xff1b;并且 其中含有 e…...

k8s从入门到放弃之Ingress七层负载

k8s从入门到放弃之Ingress七层负载 在Kubernetes&#xff08;简称K8s&#xff09;中&#xff0c;Ingress是一个API对象&#xff0c;它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress&#xff0c;你可…...

可靠性+灵活性:电力载波技术在楼宇自控中的核心价值

可靠性灵活性&#xff1a;电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中&#xff0c;电力载波技术&#xff08;PLC&#xff09;凭借其独特的优势&#xff0c;正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据&#xff0c;无需额外布…...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端

&#x1f31f; 什么是 MCP&#xff1f; 模型控制协议 (MCP) 是一种创新的协议&#xff0c;旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议&#xff0c;它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...

根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的----NTFS源代码分析--重要

根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的 第一部分&#xff1a; 0: kd> g Breakpoint 9 hit Ntfs!ReadIndexBuffer: f7173886 55 push ebp 0: kd> kc # 00 Ntfs!ReadIndexBuffer 01 Ntfs!FindFirstIndexEntry 02 Ntfs!NtfsUpda…...

xmind转换为markdown

文章目录 解锁思维导图新姿势&#xff1a;将XMind转为结构化Markdown 一、认识Xmind结构二、核心转换流程详解1.解压XMind文件&#xff08;ZIP处理&#xff09;2.解析JSON数据结构3&#xff1a;递归转换树形结构4&#xff1a;Markdown层级生成逻辑 三、完整代码 解锁思维导图新…...

node.js的初步学习

那什么是node.js呢&#xff1f; 和JavaScript又是什么关系呢&#xff1f; node.js 提供了 JavaScript的运行环境。当JavaScript作为后端开发语言来说&#xff0c; 需要在node.js的环境上进行当JavaScript作为前端开发语言来说&#xff0c;需要在浏览器的环境上进行 Node.js 可…...

起重机起升机构的安全装置有哪些?

起重机起升机构的安全装置是保障吊装作业安全的关键部件&#xff0c;主要用于防止超载、失控、断绳等危险情况。以下是常见的安全装置及其功能和原理&#xff1a; 一、超载保护装置&#xff08;核心安全装置&#xff09; 1. 起重量限制器 功能&#xff1a;实时监测起升载荷&a…...

Linux操作系统共享Windows操作系统的文件

目录 一、共享文件 二、挂载 一、共享文件 点击虚拟机选项-设置 点击选项&#xff0c;设置文件夹共享为总是启用&#xff0c;点击添加&#xff0c;可添加需要共享的文件夹 查询是否共享成功 ls /mnt/hgfs 如果显示Download&#xff08;这是我共享的文件夹&#xff09;&…...

【java】【服务器】线程上下文丢失 是指什么

目录 ■前言 ■正文开始 线程上下文的核心组成部分 为什么会出现上下文丢失&#xff1f; 直观示例说明 为什么上下文如此重要&#xff1f; 解决上下文丢失的关键 总结 ■如果我想在servlet中使用线程&#xff0c;代码应该如何实现 推荐方案&#xff1a;使用 ManagedE…...

职坐标物联网全栈开发全流程解析

物联网全栈开发涵盖从物理设备到上层应用的完整技术链路&#xff0c;其核心流程可归纳为四大模块&#xff1a;感知层数据采集、网络层协议交互、平台层资源管理及应用层功能实现。每个模块的技术选型与实现方式直接影响系统性能与扩展性&#xff0c;例如传感器选型需平衡精度与…...