首页 > 其他分享 >有关ORM框架的新观点

有关ORM框架的新观点

时间:2024-04-14 20:14:27浏览次数:26  
标签:框架 视图 主键 ORM SQL 查询 观点 冗余

1、对于1:1 1:N N:N的场景,视图的观点是不恰当的,因为有外键关系在,在EF或者typeorm,prisma中可以使用A.B.C 结合include方式进行懒加载方式的获取值,尤其在多对多场景,分页变得复杂,视图不可取

2、注意懒加载,并能看到SQL的执行方式。实在不行,就写SQL,子查询,也不能用视图。

3、视图存在的意义是

  1、原始数据,这个原始数据充满了大量的冗余,冗余的特性不在于列冗余,而在于行冗余,行冗余数据的处理复杂高,面临着很多问题,比如无一列主键,出现了大量的多列主键,无主键和多列主键的笛卡尔没有意义。

一个人:多个小孩:每个小孩有几本书。1*N*N。当以这个人为主时,mygod,大量的无用行列数据出现了

  2、视图是结论,结论性后再查询,无法进行在中间表查询条件的参数化是重要的问题,子查询的参数无法定治

 

在项目中尽量减除视图对于项目的影响。改用关系,关系描述不了的视图可以增色。

存储过程处理业务,包括业务查询复杂度高的,数据处理,带业务的

标签:框架,视图,主键,ORM,SQL,查询,观点,冗余
From: https://www.cnblogs.com/sexintercourse/p/18134589

相关文章

  • ABP -Vnext框架一步一步入门落地教程——ABP Vnext框架代码安装和启动(一)
    兄弟们,人生需要指引,而复制最快的方式,让我们行动吧——codesoft教程介绍ABP-Vnext框架我们之前摸了无数次,好象初恋的女孩,一直在靠近,一直在努力,一直不敢盯着她的眼睛说:美女,我很喜欢你,能不能一起吃个饭!我们都喜欢自己变得足够的优秀之后,才敢说这句话。结果三年就过去了。我想搞技......
  • typmorm 类似ef的懒加载
    typmorm类似ef的懒加载在TypeORM中,可以通过设置关系的eager:false属性来实现类似于EntityFrameworkCore(EF)的懒加载功能。这意味着关联的实体将默认不会立即加载,而是在访问它们时才加载。以下是一个简单的例子,演示如何在TypeORM中实现懒加载:  import{Enti......
  • 一对一 typeorm
    一对一一对一是一种A只包含一个B实例,而B只包含一个A实例的关系。我们以User和Profile实体为例。用户只能拥有一个配置文件,并且一个配置文件仅由一个用户拥有。import{Entity,PrimaryGeneratedColumn,Column}from"typeorm";@Entity()exportclassProfile{......
  • ModuleNotFoundError: No module named 'formatter'
    在学习韦东山Linux下载BSP章节时 走到第四步的时候出现ModuleNotFoundError:Nomodulenamed'formatter'的错误查了资料发现是第一步的问题,原因在于对于ubantu22.04来说formatter已在python3.4+标记成废弃接口,就算你按照网上教程添加这个模块也无法解决。解决方法是第一步......
  • 未来的前端框架技术发展趋势
    ​福利开篇推荐老铁们,你们是否平常开发有这样的问题:1.需要公网访问内网的一个服务?2.需要一个开发环境直接支持https,但是弄本地证书既不合法,又很麻烦?3.本地有强劲的服务器,需要对公网提供服务,但是拉宽带既贵,又麻烦?4.有云主机,但同时云主机需要访问内部的服务器?5.......
  • CF107A Dorm Water Supply 题解
    题目简述给出一个$n$个点,$m$条边的有向图,边带权。保证每个点的出度和入度最多为$1$。对于每一个入度为$0$,出度为$1$的点,我们在该点建一个水箱。对于每一个入度为$1$,出度为$0$的点,我们在该点建一个水龙头。可以发现,每一个水箱对应一个唯一的水龙头,我们将每对对应......
  • Ant - Form 自定义组件 form.getFiledsValue 如何获取值
    import{FC,useState}from'react';importtype{SelectProps}from'antd';import{Select,Space,Flex,Input,Button}from'antd';/***扩展选择器组件,可以通过键盘enter输入一个Option*/constInputSelect:FC<{defaultOptio......
  • 基于PyTorch框架的多层全连接神经网络实现MNIST手写数字分类
    基于PyTorch框架的多层全连接神经网络实现MNIST手写数字分类简单的三层全连接神经网络导入了PyTorch相关的库,定义了一个名为SimpleNet的类,继承自nn.Module,这个神经网络有三个全连接层,分别是layer1、layer2和layer3。在初始化函数__init__中,指定了输入维度in_dim、两个隐藏层的神......
  • 52 Things: Number 47: What is the Fiat-Shamir transform?
    52Things:Number47:WhatistheFiat-Shamirtransform?52件事:47号:菲亚特沙米尔的转型是什么? Thisisthelatestinaseriesofblogpoststoaddressthelistof'52ThingsEveryPhDStudentShouldKnowToDoCryptography':asetofquestionscompiledtogi......
  • 52 Things: Number 40: What is normally considered the difference between SPA and
    52Things:Number40:WhatisnormallyconsideredthedifferencebetweenSPAandDPA?52件事:第40件:通常认为SPA和DPA之间的区别是什么? Thisisthelatestinaseriesofblogpoststoaddressthelistof '52ThingsEveryPhDStudentShouldKnowToDoCryptogr......