博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
医生orm之count、where的若干问题
阅读量:6943 次
发布时间:2019-06-27

本文共 3330 字,大约阅读时间需要 11 分钟。

ps:先讲一个笑话

        话说医生orm的生成工具的源码价值10RMB,这是什么概念呢?是在4环附近请医生吃一碗兰州拉面,在6环吃两碗,如果在1环请呢?医生在找我10rmb,所以大家还是在一环请他吃饭吧,买它工具转账什么的太麻烦了,让他带上工具源码+10rmb来一环。。。。。。。。。。。。。。。。。。。。。。

上周看看了看简单的基本操作,剩下就是where、group、count、delete 等常用操作

相关的基本的sql和model见:

医生的 where and or 简直就是琵琶,建议医生做个demo出来走两步,让大家围观一下

我的文章在注释里面!

 

Delete的demo

 

医生的dele操作没有逻辑删除字段是在是欠妥,应该加一个逻辑删除和物理删除的

protected void Page_Load(object sender, EventArgs e)
{
SuperMarket.userinfo objuserinfo = new SuperMarket.userinfo();
EntityQuery
query2 = new EntityQuery
(objuserinfo, true);
//根据id删除
objuserinfo.id = 37;
int flag = query2.Delete(objuserinfo);
Response.Write(flag);
//话说根据一个where条件批量删除该怎么弄呢?
}

count的demo

protected void Page_Load(object sender, EventArgs e)
{
SuperMarket.userinfo objuserinfo = new SuperMarket.userinfo();
EntityQuery
query2 = new EntityQuery
(objuserinfo, true);
OQL Query = new OQL(objuserinfo);
OQL result = Query.Select().Count(objuserinfo.id, "id").END;
//ps 由于不知道医生这个orm暂时如何查询偶返回第一行第一列
//     但医生的orm的对应关系,你懂得,这就是知道原理的好处。。。。。。。。。。。。。。
// 弱弱的问一下医生,如果写下面的代码????????????????
SuperMarket.userinfo objuserinfo2 = EntityQuery
.QueryObject(result);
Response.Write(objuserinfo2.id);
}

 

group 的demo

protected void Page_Load(object sender, EventArgs e)
{
SuperMarket.userinfo objuserinfo = new SuperMarket.userinfo();
EntityQuery
query2 = new EntityQuery
(objuserinfo, true);
OQL Query = new OQL(objuserinfo);
OQL myusery = Query.Select(objuserinfo.username).GroupBy(objuserinfo.username).END;
 
//话说这个地方,我怎么知道一个 oql 是返回一个list 还是一个model???还是一个 int。。。。。
//
List< SuperMarket.userinfo> objuserinfo2 = EntityQuery
.QueryList(myusery);
foreach (SuperMarket.userinfo item in objuserinfo2)
{
Response.Write(item.username+"
");
}
 
}
 
 

 

where and or 的demo

protected void Page_Load(object sender, EventArgs e)
{
///
// PS 吐槽一下,每一个查询,都要实例化这三个东西,是不是有点多余??。。。。。。。
SuperMarket.userinfo objuserinfo = new SuperMarket.userinfo();
EntityQuery
query2 = new EntityQuery
(objuserinfo, true);
OQL Query = new OQL(objuserinfo);
///
objuserinfo.username = "互联网fans";
OQL Query1 = Query.Select().Where(objuserinfo.username, "=" ).END;
List< SuperMarket.userinfo> test1 = EntityQuery
.QueryList(Query1);
//我去,这种老百姓喜欢的写法竟然不支持,话说这个写法也太奇葩了
//  OQL Query1= Query.Select().Where(objuserinfo.username = "互联网fans").END;
 
//默认应该是and吧
objuserinfo.userpassword="1234567";
OQL Query2 = Query.Select().Where(objuserinfo.username, "=", objuserinfo.userpassword,"=" ).END;
List
test2 = EntityQuery
.QueryList(Query2);
 
//来一个 or
//是在是太矛盾了 这个地方又要赋值了,无力吐槽了
//OQL Query3 = Query.Select().Where(objuserinfo.username, "=", Query.Condition.OR(objuserinfo.userpassword, "=", "1234567")).END;
//这个方式也不支持。。。。。。。。
 
OQL Query3 = Query.Select().Where(Query.Condition.OR(objuserinfo.userpassword, "=", "1234567").OR(objuserinfo.username, "=", "互联网fans")).END;
 
List
test3 = EntityQuery
.QueryList(Query3);
 
//这个到底是and 还是or 呢?圆方怎么看医生呢?
OQL Query4 = Query.Select().Where(Query.Condition.OR(objuserinfo.userpassword, "=", "1234567").AND(objuserinfo.username, "=", "互联网fans")).END;
 
List
test4 = EntityQuery
.QueryList(Query4);
 
 
//更复杂的 and 和or
//根据不同条件拼接 and 和or
//医生来做个示范动作!
}

转载地址:http://kennl.baihongyu.com/

你可能感兴趣的文章
第三届开源操作系统年度技术年会 --- 资料下载
查看>>
揭秘Windows10 UWP中的httpclient接口[2]
查看>>
Cookie的使用
查看>>
Jenkins和maven自动化构建java程序
查看>>
读取系统执行状态的shell脚本
查看>>
arcgis 10.1 导入数据到oracle 发布地图服务
查看>>
高吞吐高并发Java NIO服务的架构(NIO架构及应用之一)
查看>>
znujljhzolktftcc
查看>>
高流量站点NGINX与PHP-fpm配置优化
查看>>
eclipse中改变默认的workspace的方法及说明
查看>>
一个基于MVVM的TableView组件化实现方案
查看>>
教你区分LVDS屏线及屏接口定义
查看>>
C函数tolower,与toupper
查看>>
c 进程间的通信
查看>>
【张宴】PHP在金山游戏运营中的应用
查看>>
tomcat发布静态网页
查看>>
python函数参数前面单星号(*)和双星号(**)的区别
查看>>
深入理解javascript作用域系列第三篇——声明提升(hoisting)
查看>>
mybatis_helloWorld_sequence图(3)
查看>>
使用fastcgi_finish_request提高页面响应速度
查看>>