NHibernate -- HQL
使用NHibernate中的HQL来查询数据。
代码:
/// <summary>
/// 查找事件
/// </summary>
private void btn_Select_Click(object sender, EventArgs e)
{ }
1.查询,且是使用参数:
//**** 查询 *****
IQuery query = session.CreateQuery("from Person p where p.Id = ? and p.Name = :name"); //NHibernate中使用参数
//一种是用 "?" ,一种使用 ":"。如果使用?,那么直接表示位置,如果使用:,那么使用:后面的文件名
//在NHibernate中的语句:
//NHibernate: select person0_.Id as Id0_, person0_.Name as Name0_ from Person person0_ where person0_.Id=@p0 and person0_.Name=@p1;@p0 = 2, @p1 = '事件aaaaaaaa'
//此时 0 代表是第一个参数
//此时 1 代表是第二个参数
query.SetParameter(, ); //使用 ?
query.SetParameter("name", "测试"); //使用 : IList<Person> list = query.List<Person>(); this.label3.Text = list[].Id.ToString() + list[].Name.ToString();
2.查询--指定查询的条数,如从第2条--第5条数据:
//**** 查询指定行数****
IQuery query = session.CreateQuery("from Person"); IList<Person> list = query.List<Person>(); //重新给list赋值
//查询3--5条之间的数据,使用的是下标索引,0代表第一条。
list = list.Skip<Person>().Take<Person>().ToList<Person>(); this.label3.Text = list[].Id.ToString() + " " + list[].Name.ToString();
将1或是2,放在最上面的代码中即可。
NHibernate -- HQL的更多相关文章
- [NHibernate]HQL查询
目录 写在前面 文档与系列文章 查询的几种方式 HQL查询 一个例子 总结 写在前面 上篇文章介绍了nhibernate在项目中的基本配置,包括数据库连接字符串的设置,映射文件的配置及需注意的地方,这 ...
- NHibernate - HQL - 添加和更改
添加: /// <summary> /// 等待乙方做出回应 A /// </summary> private void button2_Click_1(object send ...
- Nhibernate HQL 匿名类(严格说是map的使用以及构造函数的使用
1.map的使用 var hql=string.Format(@"select new map( tc.LimitIndexType as LimitIndexType, tc.LimitS ...
- NHibernate系列文章二十二:NHibernate查询之HQL查询(附程序下载)
摘要 NHibernate提供了多种查询方式,最早的HQL语言查询.Criteria查询和SQL Query,到NHibernate 3.0的Linq NHibernate,NHIbernate 4. ...
- "NHibernate.Exceptions.GenericADOException: could not load an entity" 解决方案
今天,测试一个项目的时候,抛出了这个莫名其妙的异常,然后就开始了一天的调试之旅... 花了很长时间,没有从代码找出任何问题... 那么到底哪里出问题呢? 根据下面那段长长的错误日志: -- ::, ...
- 耗时两月,NHibernate系列出炉
写在前面 这篇总结本来是昨天要写的,可昨天大学班长来视察工作,多喝了点,回来就倒头就睡了,也就把这篇总结的文章拖到了今天. nhibernate系列从开始着手写,到现在前后耗费大概两个月的时间,通过总 ...
- [NHibernate]条件查询Criteria Query
目录 写在前面 文档与系列文章 条件查询 一个例子 总结 写在前面 上篇文章介绍了HQL查询,我个人觉得使用ORM框架就是为了让少些sql,提高开发效率,而再使用HQL就好像还是使用sql,就觉得有点 ...
- [NHibernate]增删改操作
目录 写在前面 文档与系列文章 添加数据 删除数据 修改数据 添加修改数据 总结 写在前面 上篇文章介绍了nhibernate的基于面向对象的条件查询.对一个项目来说,增删改查是必不可少的,虽然实现方 ...
- [NHibernate]事务
目录 写在前面 文档与系列文章 事务 增删改查 总结 写在前面 上篇文章介绍了nhibernate的增删改查方法及增加修改操作,这篇文章将介绍nhibernate的事务操作. SQL Server中的 ...
随机推荐
- poj2774之最长公共子串
Long Long Message Time Limit: 4000MS Memory Limit: 131072K Total Submissions: 18794 Accepted: 77 ...
- HTML5 总结-拖放-3
HTML5 拖放 拖放(Drag 和 drop)是 HTML5 标准的组成部分. 拖放 拖放是一种常见的特性,即抓取对象以后拖到另一个位置. 在 HTML5 中,拖放是标准的一部分,任何元素都能够拖放 ...
- leetcode 15. 3Sum 双指针
题目链接 给n个数, 找出三个数相加结果为0的所有的组, 不可重复. 用双指针的思想,O(n^2)暴力的找, 注意判重复. class Solution { public: vector<vec ...
- QT自定义对象导入JavaScript脚本使用
1.对象 项目属性要添加 QT += script自定义的对象头文件如下,实现正常就好,记得脚本里要调用的方法一定要定义在public slots:下,要不然调用时提示该对象没有*方法 #ifnd ...
- 条码的种类(types of barcode)
条码基本上分为两大类:一维条码(1D Barcode)及二维条码(2D Barcode). 一维条码(1D Barcode) 所谓一维条码,简单的说就是条码只能横向水平方向列印,其缺点是储存的资料量较 ...
- redis缓存工具Jedis进行跨jvm加锁(分布式应用)--不幸暂弃用--能够做第三方锁使用
近期使用redis碰到了多个并发处理同一个缓存的情况.在这样的情况下须要进行加锁机制. 本来想使用java自带的ReadWriteLock进行设置读写锁,这也是上家公司使用的方法. 后来经过商讨,给予 ...
- bootstrap框架开发电子商城案例
bootstrap框架开发电子商城案例 玛图 bootstrap 商城框架
- c++,内联成员函数
内联成员函数有两程方式实现内联成员函数1)在声名成员函数的同时定义成员函数体2)声明成员函数时,在最前面加上inline关键字在定义成员函数时也在最前面加上inline关键字 建议inline函数在头 ...
- VS 2013上Python的配置
最近有点不务正业,去看了下Python (主要是学校OJ有这个语言,然后可以轻松解决大数据问题,不要说我太坑~~~) 目前感觉python和matlab有些类似,缺少了变量类型声明,总感觉自己写出来的 ...
- Android百度地图之显示地图
添加地图显示 一.在百度官网下载相关的SDK (网址:http://developer.baidu.com/map/sdkandev-download.htm) 解压下载好的BaiduMap_Andr ...