视图——机房收费系统

简介: <h1><span style="font-size:24px"> 1、什么是视图?</span></h1> <p><span style="font-size:24px">  </span><span style="font-family:KaiTi_GB2312; font-size:18px">在第一次做机房收费系统时,学生信息和卡的信息是在同一张表中的,而机房收费系统重构时,对数

 1、什么是视图?

  在第一次做机房收费系统时,学生信息和卡的信息是在同一张表中的,而机房收费系统重构时,对数据库进行了重新设计,学生信息和卡的信息被分到了单独的两张表中(遵照三范式设计,减少数据冗余),当我们需要同时查询这两张表中的信息时,按照一般的方法从每张表中单独查询的话会非常麻烦且容易出错,为了减少出错,我们可以把要查询的信息整合到一张虚拟表中,这张虚拟表就是视图。

  视图就如同一张表一样,对表能够进行的一般操作(增删改查)都可以应用于视图,一个视图是由SELECT语句组成的查询定义的虚拟表,当你通过数据库本身的创建视图的功能时,下面就有一段SELECT语句

  


 2、如何创建视图?

 以机房收费系统中的学生表和卡表为例


   新建视图

   


   添加要用到的表

   


   选择要用到表中的字段

   


   最后保存视图

   


3、结束语

   数据库的优点:

     1)、集中用户使用的数据;

     2)、掩码数据库的复杂性,视图把数据库设计的复杂性与用户屏蔽分开;

   3)、简化用户权限的管理;

   4)、为向其他应用程序输出而重新组织数据。

  注意事项:

 1)、使用视图查询时,如果相关联的数据库表中添加了新的字段,必须重新创建视图才能查询到新的字段。

  2)、对依赖于多个基本表的视图,不能使用DELETE语句。

相关文章
|
JavaScript
vue3的7种路由守卫使用大全
vue3的7种路由守卫使用大全
1736 0
|
前端开发 JavaScript Java
图解HTTP请求Tomcat服务器实现前后端交互-1
图解HTTP请求Tomcat服务器实现前后端交互
387 0
|
存储 安全 Java
解析 Java 的 MultipartFile 接口:实现文件上传的全面指南
在现代的 Web 开发中,文件上传是一个常见的需求,而 Java 中的 `MultipartFile` 接口正是用来处理这类任务的重要工具。无论是上传图片、音频、视频还是其他文件类型,`MultipartFile` 都提供了便捷的方法来处理文件的接收和存储。本文将带您深入探索 Java 中的 `MultipartFile` 接口,揭示其功能、用法以及在实际开发中的应用场景。
|
5月前
|
人工智能 自然语言处理 Java
从国外到国产,AI 编程工具混战,开发者究竟该如何抉择?
AI编程工具正深刻变革开发模式,从国外的GitHub Copilot、Cursor、Trae到国内的飞算JavaAI与通义灵码,各具特色。Copilot依托开源代码与强大模型提升效率,但成本高且偶有“AI幻觉”;Cursor适合中高级开发者,续写速度快但团队版有限制;Trae以免费GPT-4和中文界面吸引用户,但可持续性存疑。国产工具方面,飞算JavaAI专注全流程Java开发,一键生成工程代码,大幅提升效率;通义灵码支持多语言,功能丰富且与IDE无缝集成。开发者需根据语言、阶段、成本等因素权衡选择,找到最适合自身需求的工具,实现开发效率与质量的飞跃。
|
缓存 负载均衡 监控
【微服务】一文读懂网关概念+Nginx正反向代理+负载均衡+Spring Cloud Gateway(多栗子)
不知道什么是网关?正向代理?反向代理?负载均衡?负载均衡策略?Nginx和Gateway的区别?假如这些你都不知道,没关系,本文举了大量通俗易懂的例子来阐述了这些概念,保证小白也能看懂,并且最后还提到了gateway的一些配置。
8368 2
【微服务】一文读懂网关概念+Nginx正反向代理+负载均衡+Spring Cloud Gateway(多栗子)
|
关系型数据库 MySQL
MYSQL 窗口函数
MYSQL 窗口函数
|
Python
【Leetcode刷题Python】94. 二叉树的中序遍历
LeetCode上94号问题"二叉树的中序遍历"的Python实现方法。
65 0
|
数据处理 Python
Python-函数
Python-函数
55 4
|
存储 Unix Shell
Linux【脚本 04】Shell脚本传递参数的4种方式(位置参数、特殊变量、环境变量和命名参数)实例说明
Linux【脚本 04】Shell脚本传递参数的4种方式(位置参数、特殊变量、环境变量和命名参数)实例说明
1436 0
|
Java 数据库 Spring
Spring5源码(40)-基于tx标签和基于@Transactional注解的声明式事物介绍
Spring5源码(40)-基于tx标签和基于@Transactional注解的声明式事物介绍
129 0