今天我们来学习一下关于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数据库其实还有一些内容,不过由于时间的关系,今天先分享到这里关于我的博文同时也欢迎大家对我的文章进行点评,也欢迎各位大佬在评论区和谐讨论。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

彩虹知识付费模板MangoA全开源包含秒杀/抽奖/社群/推送等功能

二次开发增加以下功能每日秒杀每日签到官方社群多级分销在线抽奖项目投稿 每日秒杀 每日签到 官方社群 多级分销 在线抽奖 项目投稿 下载地址:https://pan.xunlei.com/s/VNstMfOecGliiqew7UIorsOnA1?pwdhywi#

ChatGPT提问技巧——对抗性提示

ChatGPT提问技巧——对抗性提示 对抗性提示是一种允许模型生成能够抵御某些类型的攻击或偏差的文本的技术。这种技术可用于训练更健壮、更能抵御某些类型的攻击或偏差的模型。 要在 ChatGPT 中使用对抗性提示,应为模型提供一个提示,该提示的设计应使模…

岩土工程渗流问题之有限单元法:理论、模块化编程实现、开源程序应用

有限单元法在岩土工程问题中应用非常广泛,很多商业软件如Plaxis/Abaqus/Comsol等都采用有限单元解法。尽管各类商业软件使用方便,但其使用对用户来说往往是一个“黑箱子”。相比而言,开源的有限元程序计算方法透明、计算过程可控,…

【智能算法】蝠鲼觅食优化算法(MRFO)原理及实现

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.代码实现4.参考文献 1.背景 2017年,Zhao等人受到蝠鲼自然捕食行为启发,提出了蝠鲼觅食优化算法(Manta Ray Foraging Optimization,MRFO)。 2.算法原理 2.1算法思想 MRFO模拟了蝠鲼在海洋中…

Llama-3公布基础训练设施,使用49000个H100

3月13日,社交、科技巨头Meta在官网公布了两个全新的24K H100 GPU集群(49,152个),专门用于训练大模型Llama-3。 此外,Llama-3使用了RoCEv2网络,基于Tectonic/Hammerspace的NFS/FUSE网络存储,继续…

【vue在主页中点击主页面如何弹出一个指定某个页面的窗口】

【vue在主页中点击主页面跳转到某个页面的操作完整过程】 1.首先在主页面中加入一个卡槽用于展示弹出的窗口 代码如下&#xff1a; <el-dialog :visible.sync"dialogVisible1" :close-on-click-modal"false" :title"title" class"dial…

WordPress网站启用cloudflare的CDN加速后,网站出现多重定向无法访问

这是一个使用Hostease的Linux虚拟主机的客户反馈的问题&#xff0c;Hostease的虚拟主机使用的也是cPanel面板&#xff0c;客户使用的是cPanel的softaculous安装的WordPress&#xff0c;但是在安装完成后&#xff0c;并且解析了域名之后&#xff0c;发现网站无法访问&#xff0c…

激活函数Mish

paper&#xff1a;Mish: A Self Regularized Non-Monotonic Activation Function official implementation&#xff1a;https://github.com/digantamisra98/Mish 背景 在早期文献中&#xff0c;Sigmoid和TanH激活函数被广泛使用&#xff0c;随后在深度神经网络中失效。相比于…

C# 打开文件对话框(OpenFileDialog)

OpenFileDialog&#xff1a;可以打开指定后缀名的文件&#xff0c;既能单个打开文件也能批量打开文件 /// <summary>/// 批量打开文档/// 引用&#xff1a;System.Window.Fomrs.OpenFileDialog/// </summary>public void OpenFile(){OpenFileDialog dialog new Op…

Linux中文件和目录管理

目录 1——一次建立一个或多个目录&#xff1a;mkdir ​2——创建一个空文件&#xff1a;touch 3——移动和重命名&#xff1a;mv 4——复制文件和目录&#xff1a;cp 5—— 删除目录和文件&#xff1a;rmdir和rm 在学习文件与目录的管理的一些命令之前&#xff0c;我们先…

JMeter使用记录

文章目录 概述从0创建一个测试场景线程组配置元件CSV Data Set ConfigHTTP信息头管理器HTTP Cookie管理器HTTP请求默认值 逻辑控制器简单控制器IF控制器循环控制器while控制器 取样器HTTP取样 前置/后置处理器BeanShell处理器JSR223处理器 监听器查看结果树聚合报告汇总报告 概…

[java入门到精通] 20 反射精讲

复习 1.索引&#xff1a;主要是提高查询性能。 2.索引分类&#xff1a;主键索引 唯一索引 普通索引 组合索引 全文索引 hash索引 3.索引底层数据结构是btree.非叶子结点是由&#xff1a;索引指针域 叶子结点&#xff1a;索引数据(数据地址)&#xff0c;是双链表 4.jdbc:java…