zoukankan      html  css  js  c++  java
  • NHibernate -- HQL

    使用NHibernate中的HQL来查询数据。

    代码:

    1         /// <summary>
    2         /// 查找事件
    3         /// </summary>
    4         private void btn_Select_Click(object sender, EventArgs e)
    5         {
    6 
    7         }

    1.查询,且是使用参数:

     1             //**** 查询 *****
     2             IQuery query = session.CreateQuery("from Person p where p.Id = ? and p.Name = :name");
     3 
     4             //NHibernate中使用参数
     5             //一种是用 "?" ,一种使用 ":"。如果使用?,那么直接表示位置,如果使用:,那么使用:后面的文件名
     6             //在NHibernate中的语句:
     7             //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'
     8             //此时 0 代表是第一个参数
     9             //此时 1 代表是第二个参数
    10             query.SetParameter(0, 2);                   //使用 ?
    11             query.SetParameter("name", "测试");         //使用 :  
    12 
    13             IList<Person> list = query.List<Person>();
    14 
    15             this.label3.Text = list[0].Id.ToString() + list[0].Name.ToString();

    2.查询--指定查询的条数,如从第2条--第5条数据:

     1             //**** 查询指定行数****
     2             IQuery query = session.CreateQuery("from Person");
     3 
     4             IList<Person> list = query.List<Person>();
     5 
     6             //重新给list赋值
     7             //查询3--5条之间的数据,使用的是下标索引,0代表第一条。
     8             list = list.Skip<Person>(3).Take<Person>(5).ToList<Person>();
     9 
    10             this.label3.Text = list[2].Id.ToString() + " " + list[2].Name.ToString();

    将1或是2,放在最上面的代码中即可。

  • 相关阅读:
    直接插入排序
    排序概述
    因为现在这个水平还用不到树和图,所有之后放弃树和图的学习,直接进入排序的学习,现在学到排序树的删除部分,还没学完删除
    检索树
    二叉树的构造
    dedecms 忘记后台密码
    php配置伪静态的方法
    thinkPHP 中去除URL中的index.php
    thinkphp 验证码的使用
    php MySQL数据库操作类源代码
  • 原文地址:https://www.cnblogs.com/KTblog/p/4510081.html
Copyright © 2011-2022 走看看