创建与操作MySQL数据库

news2024/9/25 19:21:54

2.1 创建数据库

数据库技术主要研究如何科学地组织和存储数据,以及如何高效地获取和处理数据,它已广泛应用于各个领域。数据库是指长期存储在计算机内的、有组织的、可共享的数据集合。数据库可以看作一个存储数据对象的容器,这些对象包括数据表、视图、触发器、存储过程等,其中数据表是最基本的数据对象,是存放数据的实体。创建数据库后,才能建立数据表及其他的数据对象。

2.1.1 数据库的基本概念

1.数据

数据(Data)是描述客观事物的符号(可以是文字、数字、图形、图像等),经过数字化后存入计算机,是数据库存储的基本对象。

2.数据库

数据库(Database,DB)就是一个有结构的、集成的、可共享的、统一管理的数据集合。数据库是一个有结构的数据集合,也就是说,数据是按一定的数据模型来组织的,数据模型可用数据结构来描述。

在关系数据库中,不仅存放着各种用户数据,如与商品有关的数据、与客户有关的数据、与订单有关的数据等,还存放着与各个表结构定义相关的数据,这些数据通常称为元数据。

在关系数据库中,不仅存放着各种用户数据,如与商品有关的数据、与客户有关的数据、与订单有关的数据等,还存放着与各个表结构定义相关的数据,这些数据通常称为元数据。

3.数据库管理系统

数据库管理系统(Database Management SystemDBMS)是一种用来管理数据库的商品化软件,用于建立、使用和维护数据库,它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。

4.数据库应用程序

数据库应用程序是使用某种程序设计语言,为实现某些特定功能而编写的程序,如查询程序、报表程序等。

5.数据库用户

数据库用户是使用数据库的人员,数据库系统中的用户一般有以下 4 类。

6.数据库系统

数据库系统(Database SystemDBS)是由数据库及其管理软件组成的系统,是存储介质、处理对象和管理系统的集合体,一般由数据、数据库、数据库管理系统、数据库应用系统、用户和硬件构成。数据是构成数据库的主体,是数据库系统管理的对象。数据库是存放数据的仓库,数据库管理系统是数据库系统的核心软件,数据库应用系统是数据库管理系统支持下由用户根据实际需要开发的应用程序。

用户包括应用程序员、数据库管理员、数据管理员和最终用户。硬件是数据库系统的物理支撑,包括 CPU、内存、硬盘及 I/O 设备等。

7.关系数据库

关系数据库是一种建立在关系模型上的数据库,是目前最受欢迎的数据库管理系统。常用的关系数据库有 MySQLSQL ServerAccessOracleDB2 等。在关系数据库中,关系模型就是一个二维表,因而一个关系数据库就是若干个二维表的集合。

8.系统数据库

MySQL 主要包含 information_schemamysqlperformance_schemasys 等系统数据库,在创建任何数据库之前,用户可以使用相关命令查看系统数据库,即在命令行窗口中登录到MySQL 服务器,然后在“mysql>”提示符后输入如下命令 :

show databases ;

【Enter】键执行该命令,会显示安装 MySQL 时系统自动创建的 4 个数据库,如图 2-1所示。

2-1  查看安装MySQL时系统自动创建的数据库

information_schema 数据库

information_schema 数据库

information_schema 数据库是一个虚拟数据库,是查询数据后,从其他数据库获取的相应信息。在 information_schema 中有数个只读表,它们实际上是视图,而不是基本表,因此,用户将无法看到与之相关的任何文件。

mysql 数据库

mysql数据库是MySQL的核心数据库,主要负责存储数据库的用户、权限设置、关键字等,还有其本身需要使用的控制和管理信息。

performance_schema 数据库

performance_schema 数据库主要用于收集数据库服务器的性能参数,

该数据库里数据表的存储引擎均为 Performance_Schema而用户是不能创建存储引擎为 Performance_Schema 的数据表的。

sys 数据库

sys 数据库中所有的数据源来自 performance_schema 数据库,其目的是把 performance_schema 数据库的复杂度降低,让数据库管理员能更好地阅读这个数据库里的内容,从而更快地了解数据库的运行情况。

2.1.2 认识创建MySQL数据库的命令

MySQL 安装与配置完成后,首先需要创建数据库,这是使用 MySQL 各项功能的前提。

默认情况下,只有系统管理员和具有创建数据库角色权限的登录账户的拥有者,才可以创建数据库。在 MySQL 中,root 用户拥有最高权限。MySQL 提供了创建数据库的命令 Create Database,其语法格式如下 :

Create { Database | Schema } [ if not exists ] < 数据库名称 >

[ create_specification , … ]

其中,create_specification 的可选项如下 :

[ Default ] Character Set < 字符集名称 >

| [ Default ] Collate < 排序规则名称 >

任务 2-1】使用 Navicat for MySQL 创建数据库 MallDB

任务描述

Navicat for MySQL 的图形化环境中完成以下任务。

1)创建连接 MallConn,并打开连接 MallConn

2)创建数据库 MallDB

3)查看 MallConn 连接中的数据库。

4)打开新创建的数据库 MallDB

任务实施

创建连接 MallConn,并打开连接 MallConn

1)启动图形管理工具 Navicat for MySQL

2)建立连接 MallConn。在Navicat for MySQL】窗口中单击文件菜单,在弹出的菜单中依次选择新建连接】-【MySQL】命令,如图 2-2 所示。

2-2  文件菜单中依次选择新建连接】-【MySQL】命令

打开【MySQL- 新建连接对话框,在该对话框中设置连接参数,在“连接名”输入框中输入“MallConn,然后分别输入主机名或 IP 地址、端口、用户名和密码,如图 2-3 所示。

输入完成后单击测试连接按钮,打开显示了“连接成功”提示信息的对话框,如图 2-4所示,表示连接创建成功,单击确定按钮保存所创建的连接。在Navicat for MySQL】窗口左侧就会出现连接 MallConn

3)打开连接 MallConn。在Navicat for MySQL】窗口左侧用鼠标右键单击新创建的连接 MallConn,在弹出的快捷菜单中选择打开连接命令,如图 2-5 所示,即可打开 MallConn 连接,显示 MallConn 连接中的数据库,如图 2-6 所示。

创建数据库 MallDB

在【Navicat for MySQL】窗口左侧用鼠标右键单击打开的连接 MallConn,在弹出的快捷菜单中选择新建数据库命令,如图 2-7 所示,打开新建数据库对话框。

在【数据库名输入框中输入“MallDB,在字符集下拉列表中选择【utf8】选项,在排序规则下拉列表中选择【utf8_general_ci】选项,如图 2-8 所示。

新建数据库对话框中切换到【SQL 预览选项卡,如图 2-9 所示。

2-9  【新建数据库对话框的【SQL预览选项卡

【SQL 预览选项卡中可以看到,创建 MySQL 数据库 MallDB 的语句如下 :

CREATE DATABASE'MallDB'CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';

查看 MallConn 连接中的数据库

Navicat for MySQL】窗口中展开 MallConn 连接,可以看到新创建的数据库 MallDB,如图 2-10 所示。

 2-10  查看新数据库MallDB

打开新创建的数据库 MallDB

Navicat for MySQL】窗口左侧用鼠标右键单击新创建的数据库“malldb,在弹出的快捷菜单中选择打开数据库命令,如图 2-11 所示。数据库“malldb的打开状态如图 2-12 所示。

任务 2-2】在命名行中使用 Create Database 语句创建数据库

任务描述

1)创建一个名称为 StudentDB 的数据库。

2)查看 MySQL 服务器主机上的数据库。

 创建数据库 StudentDB

1)登录 MySQL 服务器。

打开 Windows 命令行窗口,在命令提示符后输入命令“mysql –u root -p123456”,按【Enter】键后,若窗口中的命令提示符变为“mysql>”,表示成功登录 MySQL 服务器。

2)输入创建数据库的语句。

在命令提示符“mysql>”后面输入创建数据库的语句 :

Create Database if not exists StudentDB ;

【Enter】键,执行结果如下 :

Query OK, 1 row affected, 1 warning (0.47 sec)

查看 MySQL 服务器主机上的数据库

在命令提示符“mysql>”后面输入以下语句 :

Show Databases ;

【Enter】键,执行结果如图 2-13 所示。从显示的结果可以看出,已经存在 StudentDB 数据库,表示该数据库已创建成功。

2-13  查看MySQL服务器主机上的数据库 

2.2 选择和查看数据库

当登录 MySQL 服务器后,可能有多个可以操作的数据库,这时就需要选择要操作的数据库了。使用 Create Database 语句创建数据库之后,该数据库不会自动成为当前数据库,需要使用 Use 语句来指定。在 MySQL 中,对数据表进行操作之前,需要选择该数据表所在的数据库,选择 MySQL数据库的命令的语法格式如下 :

Use 数据库名称 ;

任务 2-3】在命名行中使用语句方式选择与查看数据库的相关信息

任务描述

1)选择当前数据库为 StudentDB

2)查看数据库 StudentDB 使用的字符集。

3)查看当前使用的数据库。

4)查看数据库 StudentDB 使用的端口。

5)查看数据库文件的存放路径。

任务实施

选择当前数据库为 StudentDB

在命令提示符“mysql>”后输入以下语句 :

Use StudentDB ;

【Enter】键后出现提示信息“Database changed”,表示数据库选择成功。

查看数据库 StudentDB 使用的字符集

在命令提示符“mysql>”后输入语句 :

Show Create Database StudentDB ;

【Enter】键后会显示图 2-14 所示的结果。

2-14  查看数据库 StudentDB使用的字符集 

查看当前使用的数据库

在命令提示符“mysql>”后输入语句“select database() ; ”,然后按【Enter】键执行该语句,查看当前使用的数据库,结果如图 2-15 所示。

 2-15  查看当前使用的数据库

查看数据库 StudentDB 使用的端口

在命令提示符“mysql>”后输入语句“show variables like 'port' ; ”,然后按【Enter】键执行该语句,查看当前数据库 StudentDB 使用的端口,结果如图 2-16 所示。

2-16  查看数据库 StudentDB使用的端口

 查看数据库文件的存放路径

在命令提示符“mysql>”后输入语句“show variables like '%datadir%'; ”,然后按【Enter】键执行该语句,查看数据库文件的存放路径,结果如图 2-17 所示。

2-17  查看数据库文件的存放路径 

2.3 修改数据库

数据库创建成功后,如果需要修改数据库的参数,可以使用 Alter Database 语句。其语法格式如下 :

Alter { Database | Schema } [ 数据库名称 ]

[ alter_specification , … ]

其中,alter_specification 的可选项如下 :

[ Default ] Character Set 字符集名称

| [ Default ] Collate 排序规则名称

任务 2-4】使用 Alter Database 语句修改数据库

任务描述

1)选择 StudentDB 为当前数据库。

2)查看数据库 StudentDB 默认的字符集。

3)查看数据库 StudentDB 默认的排序规则。

4)修改数据库 StudentDB 的字符集为“gb2312”、排序规则为“gb2312_chinese_ci”

5)查看数据库 StudentDB 修改后的字符集。

6)查看数据库 StudentDB 修改后的排序规则。

任务实施

选择 StudentDB 为当前数据库

在命令提示符“mysql>”后输入语句“Use StudentDB ; ”,然后按【Enter】键执行该语句,若提示“Database changed”,则表示数据库选择成功。

查看数据库 StudentDB 默认的字符集

在命令提示符“mysql>”后输入语句“show variables like 'character%' ; ”,然后按【Enter】键执行该语句,查看当前数据库 StudentDB 默认的字符集,结果如图 2-18 所示。

 2-18  查看当前数据库 StudentDB默认的字符集

查看数据库 StudentDB 默认的排序规则

在命令提示符“mysql>”后输入语句“show variables like 'collation%' ; ”,然后按【Enter】键执行该语句,查看当前数据库 StudentDB 的排序规则,结果如图 2-19 所示。

 2-19  查看数据库 StudentDB默认的排序规则

修改数据库 StudentDB 的默认字符集和排序规则

在命令提示符“mysql>”后输入以下语句 :

Alter Database StudentDB Character set gb2312 Collate gb2312_chinese_ci ;

【Enter】键,出现“Query OK, 1 row affected (0.48 sec)”提示信息,表示修改成功。

查看数据库 StudentDB 修改后的字符集

在命令提示符“mysql>”后输入语句“show variables like 'character%' ; ”,然后按【Enter】键执行该语句,查看当前数据库 StudentDB 修改后的字符集,结果如图 2-20 所示。

2-20  查看数据库 StudentDB修改后的字符集 

查看数据库 StudentDB 修改后的排序规则

在命令提示符“mysql>”后输入语句“show variables like 'collation%' ; ”,然后按【Enter】键执行该语句,查看当前数据库 StudentDB 修改后的排序规则,结果如图 2-21 所示。

2.4 删除数据库

删除数据库是指在数据库系统中删除已经存在的数据库,即将已经存在的数据库从磁盘中清除。删除数据库之后,数据库中的数据也将被删除,原来分配的空间将被收回。值得注意的是,删除数据库会永久删除该数据库中的所有数据表及数据。因此,在删除数据库时,应特别谨慎。

MySQL 中,使用“Drop Database”语句可删除数据库,其语法格式如下 :

Drop Database [ if exists ] < 数据库名 > ;

若使用“if exists”子句,则可避免删除不存在的数据库时出现错误提示信息 ;如果没有使用“if exists”子句,那么删除的数据库在 MySQL 中不存在时,系统就会显示错误提示信息。

任务 2-5】使用 Drop Database 语句删除数据库

任务描述

1)查看 MySQL 当前连接中的数据库。

2)删除数据库 StudentDB

3)在删除数据库 StudentDB 前后分别查看 MySQL 当前连接中的数据库。

 任务实施

查看 MySQL 当前连接中的数据库

在命令提示符“mysql>”后输入“Show Databases ; ”语句,按【Enter】键,从运行结果中可以看出 MySQL 当前连接中包含了 StudentDB 数据库。

删除数据库 StudentDB

在命令提示符“mysql>”后输入以下语句 :

Drop Database StudentDB ;

【Enter】键,出现“Query OK, 0 rows affected (0.11 sec)”提示信息,表示删除成功。

删除数据库 StudentDB 后,再一次查看 MySQL 当前连接中的数据库

在命令提示符“mysql>”后输入“Show Databases ;”语句并按【Enter】键,结果如图 2-22所示,可以看出当前连接中数据库 StudentDB 已不存在。

2-22  删除数据库 StudentDB后查看MySQL当前连接中的数据库 

 

sys 数据库

 

performance_schema 数据库

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

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

相关文章

抖音热门《点燃我,温暖你》李峋同款爱心特效复刻

引言 最近&#xff0c;电视剧《点燃我&#xff0c;温暖你》的热度在抖音上持续升温&#xff0c;特别是剧中李峋的爱心特效&#xff0c;让不少观众为之心动。许多粉丝都在寻找这个特效的源码&#xff0c;希望能够在自己的电脑上重现这一浪漫场景。幸运的是&#xff0c;我在B站上…

【白话MQ】消息队列MQ的使用和选型

快速导航 面试题&#xff1a;为什么使用消息队列&#xff1f;1. 解耦2. 异步3. 削峰 消息队列的优缺点&#xff1f;1. 系统可用性可能会降低2. 系统复杂度提高3. 一致性的挑战 Kafka、ActiveMQ、RabbitMQ、RocketMQ 的区别和适合的场景&#xff1f;区别&#xff1a;使用建议&am…

【Python机器学习系列】使用SMAC优化SVC分类模型的超参数(案例+源码)

这是我的第352篇原创文章。 一、引言 在机器学习和人工智能领域&#xff0c;优化超参数以提升模型性能是一项至关重要的任务。SMAC3&#xff0c;全称Sequential Model-based Algorithm Configuration&#xff0c;是一个强大且灵活的贝叶斯优化包&#xff0c;专注于高效地寻找算…

SpringBoot依赖之Spring Boot Admin(二)

本文核心&#xff1a;集成Prometheus 指标实现应用指标图表监控 作者语录&#xff1a; 我们一直在追逐需求和迭代的路上&#xff0c;却不曾回头看自己曾经的作品是否给自己留下经验和遗憾。技术永远没有边界&#xff0c;但个人必须对自己过往的行为买单&#xff0c;无论对与错…

TestNet 资产管理信息收集系统,附下载链接

我们团队在进行例行的安全活动时&#xff0c;信息管理和监控变得越来越重要了。尤其是在 hvv 和 zb 的任务中&#xff0c;我们需要对公司的资产有一个全貌的了解&#xff0c;以便及时识别和修复潜在的安全漏洞。这个过程通常涉及到大量的信息收集和数据分析&#xff0c;往往会消…

基于多技术融合下生态系统服务权衡与协同动态分析及论文写作方法

生态系统服务是指生态系统所形成的用于维持人类赖以生存和发展的自然环境条件与效用&#xff0c;是人类直接或间接从生态系统中得到的各种惠益。联合国千年生态系统评估&#xff08;Millennium ecosystem assessment&#xff0c;MA&#xff09;提出生态系统服务包括供给、调节、…

Vue——day13之脚手架

目录 概述 创建一个脚手架 首先下载脚手架 创建文件 脚手架中代码分析 main.js index.html render 为什么要用render 脚手架的默认配置 总结 概述 Vue的脚手架是一个快速构建Vue项目的工具&#xff0c;它集成了一系列的开发工具和配置&#xff0c;提供了一种标准化的…

MFC修改控件ID的详细说明

控件的ID可以在该对话框的.rc中修改 首先需要开启资源视图 然后在资源视图中打开该对话框 选中某个控件&#xff0c;就可以在属性面板中修改ID了 在此处修改ID后&#xff0c;对应Resource.h中也会发生变化 若在.rc中创建了一个控件时&#xff0c;Resource.h中会生成一个对应…

XML 保存 显示XML 方式 encoding=“UTF8“

XML 保存 encoding“UTF8” 将文件另存为 编码 UTF8 &#xff0c; 跟encoding“UTF8” 保持一致 。

NVDLA专题13:NVDLA软件部分设计和Compiler library

NVDLA拥有完整的软件生态&#xff0c;包括从编译神经网络到推理的支持。这个生态的一部分包括on-device软件栈&#xff08;software stack&#xff09;&#xff0c;它是NVDLA开源版本的一部分。此外&#xff0c;英伟达将提供完整的training infrastructure&#xff0c;用来构建…

基于yolov8的肺炎检测系统python源码+onnx模型+评估指标曲线+精美GUI界面

【算法介绍】 基于YOLOv8的肺炎检测系统是一项前沿的深度学习应用&#xff0c;该系统利用YOLOv8这一先进的目标检测算法&#xff0c;能够高效地分析病人的X射线肺部图像&#xff0c;从而快速识别出肺炎的征状。YOLOv8作为Ultralytics公司开发的最新版本&#xff0c;引入了多项…

猎板通信PCB动态:苹果16系列多款设备上线,PCB供应商的机遇与挑战!

在最新的苹果供应链动态中&#xff0c;苹果公司对于PCB供应商的选择标准非常严格&#xff0c;主要考虑因素包括技术能力、生产规模、质量控制、成本效益、供应链稳定性以及环境和社会责任等。随着苹果产品技术的不断进步&#xff0c;PCB供应商也需要具备相应的技术升级能力&…

安泰功率放大器在微纳光固化3D打印中的具体应用

随着科技的进步&#xff0c;3D打印技术已经渗透到各个领域&#xff0c;尤其是微纳光固化3D打印技术。这种技术结合了光学、材料科学和微电子学的知识&#xff0c;能够制造出具有微米级精度的复杂物体。本文Aigtek安泰电子将带你探索功率放大器在微纳光固化3D打印中的应用&#…

太简单,用这个例子详解TCP协议你肯定不知道

号主&#xff1a;老杨丨11年资深网络工程师&#xff0c;更多网工提升干货&#xff0c;请关注公众号&#xff1a;网络工程师俱乐部 下午好&#xff0c;我的网工朋友 当你在微信上给你的朋友发送一条消息&#xff0c;或者在淘宝浏览商品时&#xff0c;这些信息是如何安全、准确地…

LLM - 理解 多模态大语言模型 (MLLM) 的架构与相关技术 (二)

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/142063880 免责声明&#xff1a;本文来源于个人知识与公开资料&#xff0c;仅用于学术交流&#xff0c;欢迎讨论&#xff0c;不支持转载。 多模态…

CDGA|推动数据治理与传统产业深度融合:策略与实践路径

在数字化浪潮席卷全球的今天&#xff0c;数据已成为推动经济社会发展的关键生产要素。传统产业&#xff0c;作为国民经济的基石&#xff0c;正面临着前所未有的转型挑战与机遇。如何让数据治理这一现代管理理念与实践方法深度融入传统产业&#xff0c;促进其转型升级与高质量发…

K均值聚类

根据到给点样本的距离&#xff0c;来聚类。 1.曼哈顿距离、 2.欧几里得距离 直线距离 3.切比雪夫距离 4.闵氏距离 5.余弦相似度 对数据大小/长度等不关注&#xff0c;只关注相似度。 6.汉明距离 二进制距离 二、密度聚类 DBSCAN 前提是样本是根据紧密程度分布的。 先用超参…

Go语言概述

1.Go语言的特点 1&#xff09;从语言层面支持并发&#xff0c;实现简单 2&#xff09;goroutine&#xff0c;轻量级线程&#xff0c;可实现大并发处理&#xff0c;高效利用多核 3&#xff09;垃圾回收机制&#xff0c;内存自动回收&#xff0c;不需要开发人员管理 4&#xff0…

【网络】DNS协议、ICMP协议

DNS协议与ICMP协议 文章目录 1.DNS协议1.1DNS背景1.2域名简介1.3域名解析过程&#xff08;了解&#xff09;1.4使用dig工具分析DNS过程 2.ICMP协议2.1ICMP的功能2.2ping命令2.3traceroute命令 1.DNS协议 DNS&#xff08;Domain Name System&#xff0c;域名系统&#xff09;协…

idear获取git项目

最近想下载个ruoyi项目来包装简历&#xff0c;结果打开idear总是上一个项目&#xff0c;找不到get for vcs只好自己捣鼓了&#xff0c;顺便记录留着下次用。 步骤&#xff1a; 1. 2. 3.输入我们想访问的地址 eg: 点击克隆&#xff0c;我们就能获取项目到本地了。