数据库基础:理解与应用索引与视图

文章目录

  • 前言
  1. 索引
  2. 视图

前言

数据库管理涉及索引、视图。本基础篇不涵盖索引和视图的高级应用和核心概念。

索引

MySQL索引是提高查询性能的数据结构,类似于书籍目录,帮助数据库快速找到数据行,避免全表扫描。索引可应用于单列或多列,可以是唯一或非唯一。

单索引

语法:
ALTER TABLE 表名字 ADD INDEX 索引名 (列名);
CREATE INDEX 索引名 ON 表名字 (列名);


改变project表 添加索引 p_num关于proj_num的;

alter table project add index p_num(proj_num);

在project表的name列上建立名为proj_nume;

create index p_name on project (proj_name);

在这里插入图片描述
== 查看索引表==

show index from 表名;
在这里插入图片描述

在设计数据库时,合理地使用索引是提高性能的关键。对于经常作为查询条件的字段,如用户名这样具有唯一性和格式限制的字段,应考虑添加索引。而对于那些格式多变且允许重复值的字段,如个性签名,通常不需要添加索引,除非有特定的查询需求。

后续的索引在继续学习。

视图

视图是数据库中的一个重要概念,它提供了一个虚拟的表,其内容由查询定义。视图的核心优势在于它能够简化复杂的SQL操作、保护数据安全性、隐藏数据的复杂性以及重用查询逻辑。在实际应用中,视图可以极大地提高数据库操作的效率和便捷性。

CREATE VIEW 视图名(列a,列b,列c) 
AS SELECT1,2,3 FROM 表名字;

== 注意事项==

在大多数数据库系统中,直接对视图进行更新(如INSERT、UPDATE、DELETE)是受限的。如果需要更新视图中的数据,通常需要对视图所基于的原始表进行操作。

create view v_pj(v_num,v_name,v_dpt)
as select proj_num, proj_name, of_dpt from project;
#查看视图
select *from v_pj;

在这里插入图片描述

关于导入,导出,备份,后续在写。

总结

在本篇我初步了解索引和视图,这都是快速查询,减少搜索时间。需要了解更多的学习知识我会努力学习,争取比昨天的知识更多。
我对数据库的理解正在逐步加深,索引和视图只是其中一部分。索引是一种数据结构,能够帮助我们快速查询数据库中的数据,提高检索效率。它就像一本书的目录,通过索引,我们可以直接找到需要的数据,而不需要一页一页地翻阅整个数据库。视图则是一种虚拟的表,它可以通过查询语句将多个表中的数据整合在一起,提供一个更加简洁、易于理解的数据结构。
然而,这只是数据库知识的冰山一角。我深知,要成为一名优秀的数据库管理员或开发者,我还需要掌握更多的知识和技能。因此,我会持续学习,不断提升自己。

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

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

相关文章

vue 项目关于不同分辨率的电脑网页适配方案

流式布局:这是一种相对灵活的布局方式,页面的元素宽度使用相对宽度(例如百分比)来定义,而不是使用绝对宽度(例如像素)。这样,当浏览器窗口大小变化时,元素会自动调整大小…

CocoaPods使用详解

CocoaPods使用详解 引言 在iOS开发过程中,第三方库的集成是一个常见的需求。CocoaPods作为一个流行的依赖管理工具,能够大大简化这一过程。它允许开发者通过一个名为Podfile的配置文件来管理项目中的第三方库。本文将详细介绍CocoaPods的安装、基本使用…

Linux学习_09-Linux的用户管理

账号和用户组 系统管理员的主要工作就是管理账号。我们先来了解一下linux系统是如何识别每个用户的。 用户标识符:UID和GID linux的用户至少有2个ID,也就是UID用户ID和GID用户组ID。虽然登录的时候输入的是用户名,但其实系统识别的是这个两…

机器学习理论基础—集成学习(1)

机器学习理论基础—集成学习 个体与集成 集成学习通过构建并结合多个学习器来完成学习任务,有时也称为多分类系统等。 分类: 根据集成学习中的个体学习器的不同可以分为同质集成(集成的学习器相同例如全部是决策树)&#xff0c…

视频通话实时换脸:支持训练面部模型 | 开源日报 No.235

iperov/DeepFaceLive Stars: 19.7k License: GPL-3.0 DeepFaceLive 是一个用于 PC 实时流媒体或视频通话的人脸换装工具。 可以使用训练好的人脸模型从网络摄像头或视频中交换面部。提供多个公共面部模型,包括 Keanu Reeves、Mr. Bean 等。支持自己训练面部模型以…

字符串类型漏洞之updatexml函数盲注

UPDATEXML 是 MySQL 数据库中的一个函数,它用于对 XML 文档数据进行修改和查询。然而,当它被不当地使用或与恶意输入结合时,它可能成为 SQL 注入攻击的一部分,从而暴露敏感信息或导致其他安全漏洞。 在 SQL 注入攻击中&#xff0…

【数值模型后处理系列】通风系数计算及垂直层插值

一、通风系数 1.1 通风系数简介 通风系数(Ventilation Coefficient,VC)可以用来表征扩散条件,其计算公式如下(参考U S Iyer and P Ernest Raj的文章): 其中mixing depth选用WRF输出的边界层高…

如何我现在是本地的文件路径不是http,用html如何打开

--别给我BB 如何我现在是本地的文件架路径不是http,用html如何打开? 答: 如果你想在HTML中打开本地文件路径的视频,可以使用file://协议。假设你的视频文件在本地的路径为/path/to/your/video.mp4,那么你可以将src属性设置为file…

【Django】初识Django快速上手

Django简介 Django是一个高级的、开源的Python Web框架,旨在快速、高效地开发高质量的Web应用程序 https://developer.mozilla.org/zh-CN/docs/Learn/Server-side/Django/Introduction 安装Django pip install Django如果要知道安装的Django的版本,可…

锂电池SOH预测 | 基于CNN-GRU的锂电池SOH预测(matlab)

锂电池SOH预测 锂电池SOH预测完整代码锂电池SOH预测 锂电池的SOH(状态健康度)预测是一项重要的任务,它可以帮助确定电池的健康状况和剩余寿命,从而优化电池的使用和维护策略。 SOH预测可以通过多种方法实现,其中一些常用的方法包括: 容量衰减法:通过监测电池的容量衰减…

Qt/C++ 波形绘制双缓冲下改善PaintEvent连续绘制卡顿问题(完整代码解析)

音频波形可视化:该控件用于将音频样本数据可视化为波形,常用于音频处理软件中以展示音频信号的时间域特性。 动态数据绘制:控件能够响应外部数据的变化并重新绘制波形,适用于实时或动态的音频数据流。 自定义绘制逻辑&#xff1…

Android Studio gradle 默认sourceSets配置

一. AS默认的sourceSets配置 sourceSets在Android插件中如何使用的:android {sourceSets {main {manifest.srcFile AndroidManifest.xmljava.srcDirs [src]resources.srcDirs [src]aidl.srcDirs [src]renderscript.srcDirs [src]res.srcDirs [res]assets.srcD…

Web开发基础概念

Python的Web开发是指使用Python语言来开发Web应用程序,如网站、网络应用程序等。在Python的Web开发中,有一些核心概念和技术栈需要了解。本文将介绍Python的Web开发框架和技术栈,并提供一些相关的资源供参考。一、Python的Web开发框架Python的…

Pycharm新建工程时使用Python自带解释器的方法

Pycharm新建工程时使用Python自带解释器的方法 新建Project时最好不要新建Python解释器,实践证明,自己新建的Python解释器容易出现各种意想不到的问题。 那么怎样使用Python安装时自带的解释器呢? 看下面的三张截图大家就清楚了。 我的Pyth…

机器视觉系统-工业光源什么是同轴光

光路描述:反射光线与镜头平行,称为同轴光。 效果分析:光线经过平面反射后,与光轴平行地进入镜头。此时被测物相当于一面镜子,图像体现的是光源的信息,当“镜子“出现凹凸不平时,将格外地明显。 …

数据结构与算法-图论-DFS/BFS

图搜索算法在数据结构与算法领域中非常关键,用于在图形数据结构中搜索节点或路径。图是由节点(也称为顶点)以及连接这些节点的边组成的。在本文中,我们将详细探讨两种基础的图搜索算法:深度优先搜索(DFS&am…

Linux异步io机制 io_uring

io_uring作为2019年的后起之秀,为linux异步网络编程新增一把倚天大剑,让我们简单学习一下! 数据结构: a. sq (submition queue):提交队列,一个存放待执行事件的环形队列 b. cq (completion queue): 完成…

Node.js -- 包管理工具

文章目录 1. 概念介绍2. npm2.1 npm 下载2.2 npm 初始化包2.3 npm 包(1) npm 搜索包(2) npm 下载安装包(3) require 导入npm 包的基本流程 2.4 开发依赖和生产依赖2.5 npm 全局安装(1) 修改windows 执行策略(2) 环境变量Path 2.6 安装包依赖2.7 安装指定版本的包2.8 删除依赖2.…

【AI学习】Ben Thompson对 Nat Friedman 和 Daniel Gross的采访

读了Ben Thompson对 Nat Friedman 和 Daniel Gross的采访这篇文章,挺有趣。 先说最有趣的几个地方: 关于维苏威火山碳化古卷挑战:有趣而有意义!有关日本的预测:有可能依靠芯片制造业,也许 2030 年代就又是…

visual studio2022,开发CMake项目添加rabbitmq库,连接到远程计算机并进行开发于调试

1.打开visual studio installer 。安装“用于 Windows 的 C CMake 工具” 2.新建CMake项目 3.点击VS的“工具”—>"选项“—>“跨平台”—>”连接管理器“,添加远程计算机。用来将VS编辑的代码传到服务器进行编译–连接—运行(调试)。 …