我想要的ORM之一 -- 查询

ORM生成的实体应该有一个根,我们叫它: dbr ( db root )

假设有一些表:如 Menu表 , User 表 等。

生成的表对象后加Rule,如 MenuRule , UserRule。

在Rule类中生成实体类。如:

public class MenuRule:RuleBase{

  public class Entity{

    public string Name ;

  }

  public  ColumnDefine Name;

}

我希望能这样写:

string name = dbr.Menu

    .Select(o=>o.Name)

    .Where(o=>o.Id == 1 )

    .ToEntity("");

生成SQL: select Name from Menu where Id = 1;

List<string> name = dbr.Menu

    .Select(o=>o.Name)

    .Where(o=>o.Id > 1)

    .ToEntityList(o=>"");

生成SQL: select Name from Menu where Id > 1;

复杂一些的:

List<MenuRule.Entity> results = dbr.Menu

    .Select(o=>new Columns(){ o.Id,o.Name })

    .Where(o=>o.Id> 0)

    .Skip(10)

    .Take(10)

    .ToEntityList(o=>o._) ;

生成SQL:  select

时间: 2024-11-24 05:29:08

我想要的ORM之一 -- 查询的相关文章

Django的ORM表查询

目录 Django的ORM表查询 单表查询 多表查询 聚合查询 分组查询 F与Q查询 Django的ORM表查询 先创建一个数据库,做前期准备 为了方便测试,不再进行urls对应关系和views的书写,直接测试的单个文件 那么如何只单独测试Django中的某个py文件,有以下方法 在任意一个py文件中书写以下代码 可以在应用app的目录下的tests.py中书写 也可以自己建立一个py文件书写 import os if __name__ == "__main__": os.enviro

django orm 的查询条件

Django的ORM查询操作: 查询数据库操作是一个非常重要的技术.在Django中,查询一般就是使用filter.exclude.get三个方法来实现,在调用这些方法的时候传递不同的参数来实现查询需求. 在mysql中,想要查询数据,就需要使用where关键字加上字段条件去查询,在Django的orm之中,我们使用filter.exclude.get关键词加上field+__+condition作为关键词去查询,现在我们就来介绍一下这里的condition: 注:查询原生SQL语句: 1.在q

Django - - 基础 - - Django ORM常用查询语法及进阶

目录 一般操作 必知必会13条 单表查询之神奇的双下划线 ForeignKey操作 正向查找 反向操作 ManyToManyField class RelatedManager 聚合查询和分组查询 聚合 分组 F查询和Q查询 F查询 Q查询 锁和事务 锁 事务 其他鲜为人知的操作(有个印象即可) Django ORM执行原生SQL QuerySet方法大全 Django终端打印SQL语句 在Python脚本中调用Django环境 1, 一般操作 官网文档:https://docs.djangop

Flask的ORM和查询操作

Flask 的ORM SQLAlchemy SQLAlchemy是Python编程语言下的一个嵌入式软件.提供了SQL工具包以及对象关系映射(ORM)工具. SQLAlchemy“采用简单的Python语言,为高效和高级的数据库访问设计,实现完整的企业级持久模型”. SQLAlchemy首次发行于2006年2月,并迅速地在Python社区中最广泛使用的ORM工具之一,不亚于Django的ORM框架. Flask-SQLAlchemy Flask-SQLAlchemy是在Flask框架的一个扩展中

Dos.ORM Select查询 自定义列

自定义列 .Select( p = >new{ test = p.id}) // 同sql 列名 as 新列名 如下是 自己在写代码的例子,查询,分页,where条件,排序 var where = new Where<INCOM_TERMINALFAULT>(); where.And(a=>a.SA==1); where.And<X_CAR_DATABASE>((a, b) => b.CARNUMBERSID.Like("2")); DataT

Spring Jdbc 自定义 ORM——sql查询对应Java数据对象

Target:  实现如下,通过Spring Jdbc,传入sql,查询满足条件的Java数据对象: pojo: public class ZmTest { public ZmTest() { // TODO Auto-generated constructor stub } private Integer id; private String name; public Integer getId() { return id; } public void setId(Integer id) {

web.py中实现类似Django中的ORM的查询效果

Django中的对象查询 Django框架自带了ORM,实现了一些比较强大而且方便的查询功能,这些功能和表无关.比如下面这个例子: class Question(models.Model): question_text = models.CharField(max_length=200) pub_date = models.DateTimeField('date published') >>> Question.objects.all() >>> Question.ob

ORM的查询

基于对象的跨表查询(sql里的子查询)(重点) 一对多查询: Book(有外键)--------------->Publish     属于正向查询  按book表里的字段book.publish Book(含外键)<---------------Publish    是反向查询   按表名小写_set.all() 正向查询      例如:查python这本书的出版社的名字和邮箱 book=Book.objects.filter(title="python").first

Django【orm】查询

本文主要列举一下django orm中的常用查询的筛选方法: 大于.大于等于 小于.小于等于 in like is null / is not null 不等于/不包含于 其他模糊查询 model: class User(AbstractBaseUser, PermissionsMixin): uuid = ShortUUIDField(unique=True) username = models.CharField(max_length=100, db_index=True, unique=T