小白系列:数据库基础知识解析

news/2025/2/8 18:45:42 标签: 数据库, oracle

前言

今天,我打算用简单明了的语言来讲解一下数据库的基本概念。总体上,这些内容与我在视频中讲解的基本一致。如果你发现视频的讲解有些难以理解,不妨看看这篇文字版的解释,希望能够更快速地帮助你掌握数据库的相关知识。需要注意的是,本文讨论的数据库主要指的是关系型数据库

数据库可以简单地理解为一个大型的数据存储仓库。它的功能类似于图书馆,但在数据的存储和管理方面,数据库不仅能够有效地组织大量的数据,还通过各种技术手段使得数据的查询和检索变得更加高效和便捷。正因为如此,我们有了数据库这样的工具,以帮助我们更快速、更准确地找到和利用存储的信息。

关系型数据库

什么是关系型数据库呢?简单来说就是关系型数据库就像一个整理得很好的文件柜,每个抽屉里都有分类好的文件,方便你查找和管理。每个抽屉里有不同的文件夹,而每个文件夹里有很多文件,这些文件夹和文件之间有明确的关系和组织方式。

image

除了以上特点外,数据库还具备一个至关重要的特性,那就是必须能够高效地搜索和检索数据。实际上,几乎所有用户在使用数据库时,都能体验到这种搜索功能的便利性。比如这样的搜索功能,大家都用过啦。

image

Excel表格

在这里,我们有必要详细说明一下Excel表格,以便更好地理解数据库的概念。虽然文件存储和数据库有一些类似的功能,但它们在数据管理和表达方式上存在显著差异。

与文件存储的简单数据管理方式不同,Excel表格提供了一个直观的界面,能够更清晰地展示数据的存储和操作过程。通过对比,我们可以更好地理解数据库的结构和功能。接下来,我们将探讨Excel表格是如何高效地组织和处理数据的,以便为理解数据库的工作原理提供一个更加具体和形象的参考。

数据存储

我们常见的表格通常都会设有列名,用于向其他人说明每一列的数据内容及其作用,这样的列名起到了关键的描述作用。

在我的演示中,为了简化说明,我仅列出了几个基本的列名。接下来,我们通常会在每一行中输入实际的数据。虽然在数据量较少时,我们可以很容易地通过肉眼识别和查找所需的信息,但一旦数据量增多,情况就会大不相同。

此时,简单的视觉扫描已经无法有效地进行数据查找。例如,如果需要找到特定的内容,比如列G中的数据2,这种情况下,我们可能会发现查找过程变得异常繁琐和耗时。因此,当面对大量数据时,依赖传统的手工查找方法不仅低效,还可能导致错误和遗漏。

image

数据筛选

但是,我们都知道Excel具有强大的筛选功能,该功能允许我们按照每一列的内容进行筛选。通过这种方式,我们可以迅速找到所需数据所在的行。

image

例如,当我们需要查找特定条件下的数据时,只需应用相应的筛选条件,即可快速定位并查看符合条件的行,从而大大提高了数据处理的效率。

其实,这种操作实际上与数据库中的常用操作非常类似。理解并掌握这些在Excel中的常见操作习惯,能够帮助你更好地理解和应用数据库中的相关功能。

在这方面,我们通常不需要详细讨论如何修改或删除数据,因为这些操作通常是通过鼠标手动完成的。然而,了解筛选功能是至关重要的。我们在进行数据删除或修改之前,必须首先使用筛选功能来准确定位需要操作的数据,然后再进行相应的删除或修改操作。

数据库常见操作

通过对以上Excel表格处理的总结,我们可以归纳出几种常见的操作方法,包括:添加数据、查询数据、修改数据和删除数据。在这里,我们无需深入了解如何创建和删除文件,因为在Coze智能体中,这些操作可以通过鼠标直接完成,从而节省了我们一部分学习成本。例如:

image

好的,那么接下来,我们将根据这些操作展开快速学习。通常情况下,当数据表创建完成后,它们最初是空的,也就是说没有任何数据。因此,第一步是引导用户在聊天过程中将数据添加到表中。由于大模型在SQL处理能力方面通常存在一定的局限性,而且对其进行精准控制也较为困难,所以在实际工作流中,我主要依赖数据库节点来处理这些数据操作。

接下来,我们将使用智能体提供的模板数据库来进行演示。通过这个示例,我们可以详细展示如何在实际操作中应用上述方法。

添加数据

那么,"添加"这个词,在英文中直译为“insert”。接下来,还有一个关键组成部分就是“表名”。你不可能创建一个学生表格,然后在老师表格中添加学生数据,对吧?这是同样的道理。接着是列名,在数据库中称为“字段”,每个字段对应一列数据。为了添加数据,我们需要准确填写“姓名”字段,不能把数据放到其他地方,否则就会混乱。总之,这就是数据结构的基本概念。在数据库中,这种操作被称为SQL语句。

insert into book_notes (section,name)

当我们需要对数据库中的字段赋值时,在英文中通常使用“value”这个词。然而,数据库操作中,尤其是涉及多个列时,即使只对一列进行赋值,我们也必须使用复数形式“values”。而且,提供的值需要按照字段的顺序进行排列。举个例子:

insert into book_notes (section,name) values(2,‘西游记’)

请注意,在存储字符串文本时,我们必须使用两个英文单引号(‘’)将文本包裹起来。这种做法是为了确保文本被正确解析和存储在数据库中。只有这样,数据库才能正确地处理和存储这些字符串数据,避免可能的语法错误或数据存储问题。

image

查询数据

在有了数据之后,我们就需要进行查询操作。在英文中,“查询”这个词直译为“select”。当你需要查看特定的字段(列)时,必须明确列出这些字段。同时,你还需要指定要查询的数据表(相当于Excel文件)。这样,我们就可以编写如下的SQL语句来完成查询操作:

select section,name from book_notes

是的,除了在添加数据时需要对字段名称使用括号以明确其位置之外,其他所有情况下都不需要单独添加括号。

然后,这种查询方式与我们的习惯不太符合。我们通常只会查询我们所需要的数据。例如,在Excel文件中,我们会对某一列进行筛选;在数据库中,我们可以使用关键字 WHERE 来实现类似的筛选功能。要筛选哪个字段,只需在 WHERE 关键字后面指定相应的字段即可。例如:

select section,name from book_notes where section = 1

image

可以看到,这种查询方式只返回了我们所需的数据,这样一来,我们就可以在工作流中进一步对这些数据进行处理和分析,而无需额外筛选或清理不相关的信息。

修改数据

接下来,修改一词,直译成英文就是【update】,首先,我们必须指定要修改数据的表名,这样的话,我们可以更新特定表中的数据,但必须明确要更新哪些行数据,同样的也是使用【where】关键词进行筛选,我们在筛选后那一条或者一部分数据后,我们想改那一列数据,【设置】一词,直译成英文就是【set】,好的,结合起来,SQL更新语句的基本格式如下:

update book_notes set section = 2 where section =1

记住写的顺序即可。

image

删除数据

删除数据的操作其实非常简单。我们可以通过筛选条件来确定需要删除的数据,而这些条件通常是通过 【WHERE】 子句来指定的。要将“删除”一词直译成英文,就是 【DELETE】。接下来,我们只需指定表名。最终的 SQL 语句格式如下:

delete from book_notes where section = 2

image

好的,到这里为止,数据库的四大基本操作,即增(INSERT)、查(SELECT)、改(UPDATE)和删(DELETE),是程序员在实际工作中最常用的语句。这些操作构成了数据库管理和数据操作的基础。当然,面对更加复杂的业务逻辑和需求,还可以衍生出更多的高级知识点和技巧,但这些内容超出了我们目前讨论的范围。

总结

尽管我们在本文中只触及了数据库的基础部分,实际应用中可能会遇到更复杂的业务逻辑和需求。这些复杂的场景通常需要深入了解更多高级特性和技巧。虽然这些内容超出了本文的范围,但掌握基本操作是迈向高级技能的第一步。

希望通过这篇文章,你能够对数据库有一个清晰的认识,并在实际工作中熟练运用这些基本操作。未来,随着你对数据库知识的深入理解,你将能更好地应对各种数据管理和分析的挑战。感谢你的阅读,希望这些内容对你有所帮助。


我是努力的小雨,一名 Java 服务端码农,潜心研究着 AI 技术的奥秘。我热爱技术交流与分享,对开源社区充满热情。同时也是腾讯云创作之星、阿里云专家博主、华为云云享专家、掘金优秀作者。

💡 我将不吝分享我在技术道路上的个人探索与经验,希望能为你的学习与成长带来一些启发与帮助。

🌟 欢迎关注努力的小雨!🌟


http://www.niftyadmin.cn/n/5845205.html

相关文章

java练习(10)

ps:题目来自力扣 给你两个二进制字符串 a 和 b ,以二进制字符串的形式返回它们的和。 class Solution {public String addBinary(String a, String b) {StringBuilder result new StringBuilder();int i a.length() - 1;int j b.length() - 1;int carry 0;whi…

k8s部署go-fastdfs

前置环境:已部署k8s集群,ip地址为 192.168.10.1~192.168.10.5,总共5台机器。 1. 创建provisioner制备器(如果已存在,则不需要) 制备器的具体部署方式可参考我的上一篇文章: k8s部署rabbitmq-CSDN博客文章浏览阅读254次,点赞3次,收藏5次。k8s部署rabbitmqhttps://blo…

UnoCSS 自定义规则

UnoCSS 作为一款强大的原子化 CSS 框架,为我们提供了高效构建样式的方式。除了使用其预设的原子化类名,掌握 UnoCSS 的自定义规则技能,能让开发者根据项目的独特需求,定制出更贴合业务的样式规则,进一步提升开发的灵活…

算法13(力扣225)-用队列实现栈

1、问题 请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(push、top、pop 和 empty)。 实现 MyStack 类: void push(int x) 将元素 x 压入栈顶。 int pop() 移除并返回栈顶元素。…

硬核技术:小程序能够调用手机的哪些传感器

一、加速度传感器 小程序可以调用手机的加速度传感器来检测设备的运动状态。加速度传感器能够测量设备在三个轴(X、Y、Z)上的加速度变化。通过分析这些数据,小程序可以实现一些功能,如运动检测、步数统计、游戏中的动作感应等。 健…

UE学习日志#24 C++笔记#10 内存管理1

注:此文章为学习笔记,只记录个人不熟悉或备忘的内容 1 使用动态内存 1.1 如何描述动态内存 区分好栈上自动分配的变量和自由存储区的变量。 1.2 分配和释放 1.使用new和delete delete ptr;ptrnullptr; 2.避免在C中使用malloc()和free(),…

CRM系统中的数据分析和报表功能如何帮助企业?

CRM系统中的数据分析和报表功能:企业战略决策的得力助手 在当今竞争激烈的商业环境中,企业要想保持竞争力并实现持续增长,必须依靠精准的数据分析来制定有效的战略决策。而客户关系管理(CRM)系统的数据分析与报表生成…

【鸿蒙开发】第二十四章 AI - Core Speech Kit(基础语音服务)

目录 1 简介 1.1 场景介绍 1.2 约束与限制 2 文本转语音 2.1 场景介绍 2.2 约束与限制 2.3 开发步骤 2.4 设置播报策略 2.4.1 设置单词播报方式 2.4.2 设置数字播报策略 2.4.3 插入静音停顿 2.4.4 指定汉字发音 2.5 开发实例 3 语音识别 3.1 场景介绍 3.2 约束…