MySQL字典数据库设计与实现 ---项目实战

软件准备✍:Mysql与Navicat可视化命令大全 ----项目实战 文章前言部分

目录

一.摘要

二.设计内容 

三.项目实现 


一.摘要

  本项目关注于字典数据库表结构的设计和数据管理。通过现有的sql文件,实现system_dict_type和system_dict_data两个数据表。随后,通过SQL查询语句,实现了两个表之间的关联查询,并通过创建视图来整合和展示关联数据。在数据维护方面,实现了对特定数据的软删除操作,即在不直接删除记录的情况下,通过设置deleted字段来标记记录为已删除状态。

二.设计内容 

 ① 查询出system_dict_type表中name为“告警类型”关联的system_dict_data表中所有字典数据

 ② 删除system_dict_type表中name为“虚拟机状态”的数据,同时删除与该条数据关联的system_dict_data表中所有字典数据(通过将deteled字段置1完成)

 ③ 根据两个表创建视图view_system_dict,要求视图中的字段需要包括以下字段:

 其中dict_data_id为system_dict_data表的id字段,dict_label为system_dict_data表的label字段,dict_value为system_dict_data表的value字段,dict_type_id为system_dict_type表的id字段,dict_type_name为system_dict_type表的name字段,dict_type_code为system_dict_type表的type字段,dict_data_status为system_dict_data表的status字段,dict_data_deleted为system_dict_data表的deleted字段。需要注意的是,视图中的数据仅包含两个表中deleted字段值为0的记录。

三.项目实现 

 数据集准备 dict.sql 文件

 第一步,选择用navicat打开sql文件,如图选择连接名、数据库,然后点击运行,相关的数据表就会出现在该数据库下,我们就可以操作这些数据了。

 解决设计内容中的三个问题将用序号代替

SELECT *
FROM system_dict_data
WHERE dict_type ='告警类型';

START TRANSACTION;  
DELETE FROM system_dict_type  
WHERE name = '虚拟机状态';  
UPDATE system_dict_data  
SET deleted = b'1'  
WHERE dict_type = (SELECT type FROM system_dict_type WHERE name = '虚拟机状态');;

③ 

CREATE VIEW view_system_dict AS  
SELECT  sdd.id AS dict_data_id,  sdd.label AS dict_label,  sdd.value AS dict_value,  sdt.id AS dict_type_id,  sdt.name AS dict_type_name,  sdt.type AS dict_type_code,  sdd.status AS dict_data_status,  sdd.deleted AS dict_data_deleted  
FROM  system_dict_data sdd  
JOIN  system_dict_type sdt ON sdd.dict_type = sdt.type  
WHERE  sdd.deleted = 0 AND sdt.deleted = 0;

 视图:

  关注不迷路☑,博主带你上高速☝,感谢关注,有问题请留言或私信✍(接单)

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

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

相关文章

去中心化衍生品协议内卷,ZKX 能否通过差异化道路突出重围?

去中心化衍生品赛道目前从协议类型来看,主要有两种解决方案: 以 GMX 为代表的 Vault 模式,LP 作为交易者的对手盘,由 Orcale 喂价决定交易价格。 以 dYdX 为代表的订单薄模式,链下撮合链上结算。 这两种解决方案虽然…

前端 三维空间笔记

<!DOCTYPE html> <html> <head> <!-- 考点2D旋转&#xff0c;位移&#xff0c;缩放&#xff0c;倾斜和3D --> <meta charset"utf-8" /> <title>三维</title> <style type"te…

短视频剪辑都学习哪些人软件?沈阳有哪些办公软件培训学校

在学习短视频剪辑时&#xff0c;通常会接触到以下几个常用的软件&#xff0c;每个软件都有其独特的功能和优势&#xff1a; Adobe Premiere Pro&#xff1a; 功能强大&#xff0c;适用于专业级别的剪辑。支持多种格式&#xff0c;拥有丰富的插件和特效。集成了Adobe其他产品&am…

【HarmonyOS NEXT】鸿蒙customScan (自定义界面扫码)

起始版本&#xff1a;4.1.0(11) 导入模块 import { customScan } from kit.ScanKit; ViewControl 相机控制参数。 系统能力&#xff1a;SystemCapability.Multimedia.Scan.ScanBarcode 起始版本&#xff1a;4.1.0(11) 名称 类型 只读 可选 说明 width number 否 …

使用ig507金融数据库的股票API接口经验有感:Java与Python

一、Java技术&#xff1a; 1. Java调用ig507金融数据库&#xff08;ig507.com&#xff09;股票API接口 引言&#xff1a; 随着金融科技的不断发展&#xff0c;数据驱动的投资策略变得越来越重要。本文将介绍如何使用Java语言调用ig507金融数据库的股票API接口&#xff0c;以…

Redis-数据类型-Hash

文章目录 1、查看redis是否启动2、通过客户端连接redis3、切换到db3数据库4、插入新数据返回15、获取指定哈希&#xff08;hash&#xff09;对象的所有字段&#xff08;field&#xff09;名6、获取存储在指定哈希&#xff08;hash&#xff09;对象中的所有字段&#xff08;fiel…

Javascript中的this关键字指向

this关键字介绍 不同情况下的this 1.对象调用方法中的this 2.在全局使用this(单独使用) 3.函数中的this 4.函数严格模式下 5.事件中的this 6.构造函数中的this 7.箭头函数没有this call()、apply()、bind() 的用法 this关键字介绍 面向对象语言中 this 表示当前对象…

ubuntu server 22.04安装 fdfs

ubuntu server 22.04安装 fdfs 安装依赖包 sudo apt -y install gcc g make pcre2-utils libpcre2-dev openssl libssl-dev zlib1g zlib1g-dev libxml2-utils libxml2 libxml2-dev libxslt-dev libgd-dev libgeoip-dev libgoogle-perftools-dev libperl-dev下载相关软件包 s…

Charles 显示内存不足解决方法

弹窗出现&#xff1a;Charles is running low on memory. Recording has been stopped. Please clear the session to free memory and continue recording. 官网解决方法&#xff1a; Charles runs out of memory After recording for a while Charles will run low on ava…

一文教你学会使用BitSet

开始之前&#xff0c;介绍一下​最近很火的开源技术&#xff0c;低代码。 作为一种软件开发技术逐渐进入了人们的视角里&#xff0c;它利用自身独特的优势占领市场一角——让使用者可以通过可视化的方式&#xff0c;以更少的编码&#xff0c;更快速地构建和交付应用软件&#…

喜讯:ISO年度审核通过!

在数字化时代&#xff0c;质量是我们不变的追求。近日&#xff0c;矩阵起源迎来了一个值得庆祝的时刻——三项ISO体系年度考核顺利通过&#xff01;分别为&#xff1a;ISO9001 质量管理体系标准认证、ISO20000信息技术服务管理体系认证及ISO27001 信息安全管理体系认证。 ISO标…

Grafana+Prometheus(InfluxDB)+Jmeter使用Nginx代理搭建可视化性能测试监控平台

前言 在这篇博客文章中&#xff0c;将分享JMeter > Prometheus(InfluxDB) > Grafana的集成&#xff0c;以及Nginx端口反向代理各服务的端口。 背景 在JMeter插件库中&#xff0c;有一些后端监听器可供Kafka、ElasticSearch和Azure使用。默认情况下&#xff0c;JMeter支…

探索 Screen:一个强大的终端复用工具

在日常的系统管理和开发工作中&#xff0c;我们经常需要同时运行多个终端任务&#xff0c;或者需要在一个终端会话中保持任务的持续运行&#xff0c;即使我们断开了与服务器的连接。这时&#xff0c;screen 命令就成为了一个非常有用的工具。本文将详细介绍 screen 的功能、使用…

苹果加码AI合作:继OpenAI后再携手Meta|TodayAI

两家长期竞争对手的合作前景 近日&#xff0c;据《华尔街日报》报道&#xff0c;苹果公司&#xff08;Apple&#xff09;和Meta公司&#xff08;Facebook母公司&#xff09;正在就一项潜在合作进行讨论&#xff0c;旨在将Meta的生成式AI模型整合到Apple Intelligence中。这一合…

nginx实现反向代理出现502的解决方法

目录 1. 出现原因 1.1. 防火墙拦截了端口 1.1.1. 使用 iptables 1.1.2. 使用 firewall-cmd&#xff08;适用于 CentOS/RHEL 7&#xff09; 1.2. docker容器中的ip和宿主机ip不一致 1. 出现原因 这里我是用的docker容器来进行nginx的启动的&#xff0c;在我们用nginx的配置…

Power Apps

目录 一、引言1、Power Apps2、应用场景3、Power Apps的优势与前景4、补充 二、数据源介绍1、SharePoint2、Excel3、Dataverse4、SQL5、补充&#xff08;1&#xff09;OneDrive 三、Power Apps应用类型1、画布应用2、模型驱动应用3、网站 Power Pages 四、Power Automate五、Po…

如何提高LabVIEW开发的效率?

提高LabVIEW开发效率对于工程师和研究人员来说非常重要&#xff0c;因为这不仅能缩短开发周期&#xff0c;还能提高系统的可靠性和可维护性。以下从多个角度详细分析如何提高LabVIEW开发的效率。 1. 项目规划与管理 1.1 明确需求 在项目开始前&#xff0c;详细明确项目需求&…

解决Playwright在Ubuntu下启动报错的问题:从环境到依赖的全面优化

在Ubuntu环境中使用Python进行web自动化测试时,Playwright是一个非常强大的工具。然而,在具体实践中,我们常常会遇到各种错误,尤其是在不同Python版本和依赖版本之间切换时。本文将详细介绍如何应对这些问题,并提供一些解决方法。 问题背景 在使用Playwright时,我们有时…

深入解析tcpdump:网络数据包捕获与分析的利器

引言 在网络技术日新月异的今天&#xff0c;网络数据包的捕获与分析成为了网络管理员、安全专家以及开发人员不可或缺的技能。其中&#xff0c;tcpdump作为一款强大的网络数据包捕获分析工具&#xff0c;广泛应用于Linux系统中。本文将从技术人的角度&#xff0c;详细分析tcpdu…

天气冷电脑不能启动找不到硬盘

https://diy.zol.com.cn/2004/0611/101994.shtml