当前位置: 首页 >数据库 > Moon.Orm常见问题问答FAQ

Moon.Orm常见问题问答FAQ

 有问题在评论,我看到邮件会尽快回复 

1.重点了解Db里面的方法.这是核心.

2.关于查询语句MQL:http://www.cnblogs.com/humble/p/3380065.html 

3.关于如何使用:配置说明

4.关于增删改查:http://www.cnblogs.com/humble/p/3293500.html

5.如果不能运行,看看你的配置文件中

正确的格式:

providerName="Moon.Orm,Moon.Orm.数据库类型"

错误的格式:

providerName="Moon.Orm,数据库类型"

6.如果发现无Table标记的异常,说明你的版本太老了,下载最新的代码生成器和moon.orm(博客左边有导航)

7.如何分页?

Db中有三个API都能完成分页功能,分别如下:

1.用DataSet存储分页

/// <summary>/// 获取一个分页的DataSet/// </summary>/// <param name="mql">mql语句</param>/// <param name="sumPageCount">总页数</param>/// <param name="pageIndex">页码</param>/// <param name="onePageDataCount">每页数据的条数</param>/// <param name="oneOrderbyFieldName">sqlserver中会用到的排序字段(查询结果中一个字段),其他类型数据库则填写null</param>/// <retus>分页的DataSet</retus>public virtual DataSet GetPagerToDataSet(MQLBase mql,out int sumPageCount,int pageIndex,int onePageDataCount,string oneOrderbyFieldName)

2.用自定义实体集存储分页

/// <summary>/// 获取一个分页的自定义实体集/// </summary>/// <param name="mql">mql语句</param>/// <param name="sumPageCount">总页数</param>/// <param name="pageIndex">页码</param>/// <param name="onePageDataCount">每页数据的条数</param>/// <param name="oneOrderbyFieldName">sqlserver中会用到的排序字段(查询结果中一个字段),其他类型数据库则填写null</param>/// <retus>自定义实体集</retus>public virtual List<T> GetPagerToOwnList<T>(MQLBase mql,out int sumPageCount,int pageIndex,int onePageDataCount,string oneOrderbyFieldName)where T:new()

3.用DictionaryList存储分页

/// <summary>/// 获取一个分页DictionaryList,不支持sqlserver2000/// </summary>/// <param name="mql">mql语句</param>/// <param name="sumPageCount">总页数</param>/// <param name="pageIndex">页码</param>/// <param name="onePageDataCount">每页数据的条数</param>/// <param name="oneOrderbyFieldName">sqlserver中会用到的排序字段(查询结果中一个字段,如:xxid desc,或 xxid asc),其他类型数据库则填写null</param>/// <retus>DictionaryList</retus>public virtual DictionaryList GetPagerToDictionaryList(MQLBase mql,out int sumPageCount,int pageIndex,int onePageDataCount,string oneOrderbyFieldName)

使用demo:sqlserver为例

 

using (Db db=Db.CreateDefaultDb()) {var mql=ProductsSet.SelectAll().Where(ProductsSet.ProductId.BiggerThan(1)).OrderByDESC(ProductsSet.ProductId);int sum;var list=db.GetPagerToDictionaryList(mql,out sum,2,3,"ProductId desc");Moon.Orm.Util.DictionaryListHelper.ShowDictionaryListInConsole(list);Console.WriteLine(list.Count);}

 可以看看实际demo:

 http://www.cnblogs.com/humble/p/3463307.html (最便捷的异步分页实现)

 

8.出现mysql问题

mysql用户可能出现以下问题.主要是你已经安装了mysql.data.dll在你的计算机中,删除配置文件中节点(如下第二图)

Moon.Orm常见问题问答FAQ _ JavaClub全栈架构师技术笔记

Moon.Orm常见问题问答FAQ _ JavaClub全栈架构师技术笔记

 9.关于distinct查询.

 
mql中没有直接提供支持.但是对于熟悉sql的人应该知道,可以用分组代替,且性能相当.
例如:
var mql=UserInfoSet.SelectAll().where(UserInfoSet.ID.IN(UserInfoSet.Select(UserInfoSet.ID.Min()).GroupBy(UserInfoSet.Name)));select * from userinfo where id in(select min(id) from userinfo group by name)

 

 

 

作者:[秦时明月]
来源链接:https://www.cnblogs.com/thinkingmore/p/3391005.html

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。





本文链接:https://www.javaclub.cn/database/117361.html

标签:group by
分享给朋友:

“Moon.Orm常见问题问答FAQ” 的相关文章

mysql 查询表中前10条数据 2022年06月08日 04:35:17
mysql的查询句 2022年06月09日 23:40:52
mysql查询给某个字段赋值 2022年06月10日 21:43:53
MySQL查询优化 2022年06月14日 16:56:49
mysql查询数据库的名称 2022年06月17日 22:38:25
MYSQL优化建议 2022年06月18日 08:23:02