Sql语句拼写:

  • 查询
    • DQueryDom
    • DmoQuery(返回的整个对象)
  • 更新
    • DQUpdateDom
  • 删除
    • DQDeleteDom
  • 条件
    • dom.Where.Conditions.Add(DQCondition.Or(DQCondition.Like("Name","检修部"), DQCondition.Like("Spell", "检修部")));
  • 排序
    • dom.OrderBy.Expressions.Add(DQOrderByExpression.Create("OrderId",false));
  • 分组
    • dom.GroupBy.Expressions.Add(DQExpression.Field("Name"));
  • 自定义查询字段
    • dom.Columns.Add(DQSelectColumn.Field("ID"));

       
       

    • dom.Columns.Add(DQSelectColumn.Count());

       
       

  • 连接查询

    var user = new
    JoinAlias(typeof(WpfUser));

    var bindInfo = new
    JoinAlias(typeof(UserBindInfo));

    var dom = new
    DQueryDom(user);

    dom.From.AddJoin(JoinType.Left, new
    DQDmoSource(bindInfo), DQCondition.EQ(user, "ID", bindInfo, "User_ID"));

     
     

    dom.Columns.Add(DQSelectColumn.Field("ID"));

    dom.Columns.Add(DQSelectColumn.Field("Name"));

    dom.GroupBy.Expressions.Add(DQExpression.Field("ID"));

    dom.GroupBy.Expressions.Add(DQExpression.Field("Name"));

  • Session
    • using (var context = new
      TransactionContext())

      {

      context.Session.ExecuteNonQuery(update);

      context.Session.Commit();

      }

    using (IDmoSession session = Dmo.NewSession()) //好想要引用或者继承什么,否则session为null

    {

    var list = session.ExecuteList(query);

    return list.Cast<WXDept>().ToList();

    }

     
     

  • 执行方法
    • DQUpdateDom提交 ExecuteNonQuery
      context.Session.ExecuteNonQuery(update);

      context.Session.Commit();

    • DQDeleteDom提交 ExecuteNonQuery

      Session.ExecuteNonQuery(del);

    • DomQuery提交 ExecuteScalar

      var result = (WXAgent)Session.ExecuteScalar(dmo); //DomQuery

      return (long?)context.Session.ExecuteScalar(dom); //DQueryDom

       
       

       

    • ExecuteList

      using (var context = new TransactionContext())

      {

      var list = context.Session.ExecuteList(dmo);

      var userList = list.Cast<UserBindInfo>().ToList();

      UserBindInfo bindInfo = null;

      if (userList.Count > 0)

      {

      bindInfo = userList.First();

      }

      return bindInfo;

      }

    • ExecuteReader

      using (var context = new TransactionContext())

      {

      using (var reader = context.Session.ExecuteReader(dom))

      {

      while (reader.Read())

      {

      yield return new WordPair(reader[0].ToString(), TreeUtil.GetTreePrefix(Convert.ToInt32(reader[2])) + reader[1]);

      }

      }

      }

       
       

       
       

       
       

    using (IDmoSession session = Dmo.NewSession())

    {

    dtWeiXin = session.ExecuteSql(WxSql()).Tables[0];

    }

    using (IDmoSession session = Dmo.NewSession(ConfigurationManager.AppSettings["cfdBus"]))

    {

    //session.ExecuteSqlNonQuery(CfdBusSql(dtWeiXin));

    session.ExecuteSqlNonQuery(CfdBusSql(dtWeiXin));

     
     

    session.Commit();自定义sql要提交一下子

    }

     
     

     
     

     
     

 
 

 
 

 
 

 
 

框架使用-Sql拼接的更多相关文章

  1. MyBatis框架——动态SQL、缓存机制、逆向工程

    MyBatis框架--动态SQL.缓存机制.逆向工程 一.Dynamic SQL 为什么需要动态SQL?有时候需要根据实际传入的参数来动态的拼接SQL语句.最常用的就是:where和if标签 1.参考 ...

  2. 详解Java的MyBatis框架中SQL语句映射部分的编写

    这篇文章主要介绍了Java的MyBatis框架中SQL语句映射部分的编写,文中分为resultMap和增删查改实现两个部分来讲解,需要的朋友可以参考下 1.resultMap SQL 映射XML 文件 ...

  3. COALESCE在SQL拼接中的大用途

    SQL拼接可以使得代码比较灵活,不会那么死板,对于维护也比较方便. 下面是简单的SQL拼接,同时也包含了隐式游标的概念吧,可以遍历表中的每一个字段 -------------------------- ...

  4. SQL拼接备份数据库

    在SQLserver使用脚本备份数据库的时候需要注意的问题是: 1.指向的文件名必须是有读写权限. 2.在使用批量数据库备份时候需要根据自己需求选择性备份. -- ================== ...

  5. Mybatis.net与MVC入门配置及联合查询动态SQL拼接和简单事务

    第一次学习Mybatis.net,在博客园也找到好多资料,但是在配置成功之后也遇到了一些问题,尤其是在动态SQl拼接时候,这里把遇到的问题还有自己写的一个Demo贴出来,希望能帮到新手,有不适合的地方 ...

  6. SQL拼接方法

    smark Beetle可靠.高性能的.Net Socket Tcp通讯组件 另类SQL拼接方法 在编写SQL的时候经常需要对SQL进行拼接,拼接的方式就是直接String+处理,但这种情况有个不好的 ...

  7. 另类SQL拼接方法

    在编写SQL的时候经常需要对SQL进行拼接,拼接的方式就是直接String+处理,但这种情况有个不好的地方就是不能对SQL进行参数化处理.下面介绍一种就算基于String +的方式也可以进行SQL参数 ...

  8. SQL拼接大法

    SQL拼接大法:          Step1:括号先写上() Step2:在括号内写上(,     ,     ,     ,      ,     ,) Step3:再写上单引号(,'     ' ...

  9. 多条件搜索问题 -sql拼接与参数化查询

    来源:传智播客  免费开发视频. 问题:根据书名或出版社或作者查询书籍信息. using System; using System.Collections.Generic问题; using Syste ...

随机推荐

  1. WPF x:key和x:name用法

    WPF x:key和x:name用法 x:Key用在xaml Resources,ResourceDictionary需要key来访问 x:Name用在ResourceDictionary以外任何地方 ...

  2. qextserialport打不开com10及以上的串口

    需要在portname前添加\\\\.\\这样就可以了!! 例如 QString portname; portname.append("\\\\.\\").append(ui-&g ...

  3. SSDB VS redis

    现在有不少团队开始使用了一个新型高效的 NoSQL数据库 - SSDB,如 京东.唱吧 …… SSDB 官网的定义 一个高性能的支持丰富数据结构的 NoSQL 数据库,用于替代 Redis 官网 ht ...

  4. MySql中的视图的概念及应用

    视图的基本概念 视图是从一个或几个基本表(或者视图)导出的表.它与基本表不同,是一个虚表. 数据库只存放视图的定义,而不存放视图对应的数据,这些数据仍存放在原来的基本表中.所以基本表中的数据发生变化, ...

  5. Ajax 执行流程 有用 一点

    l 1.1使用JavaScript获得浏览器内置的AJAX引擎(XMLHttpRequest对象) l 1.2 通过AJAX引擎确定请求路径和请求参数 l 1.3 通知AJAX引擎发送请求 l AJA ...

  6. CSS, Sass, SCSS 关系

    Sass(Syntactically Awesome Style Sheets) ,是一种css预处理器和一种语言, 它可以用来定义一套新的语法规则和函数,以加强和提升CSS. 它有很多很好的特性,但 ...

  7. Note: File Recipe Compression in Data Deduplication Systems

    Zero-Chunk Suppression 检测全0数据块,将其用预先计算的自身的指纹信息代替. Detect zero chunks and replace them with a special ...

  8. libguestfs知识点

    libguestfs 是一组 Linux 下的 C 语言的 API ,用来访问虚拟机的磁盘映像文件.其项目主页是http://libguestfs.org/ , 该工具包内包含的工具有virt-cat ...

  9. MATLAB解决常微分方程

    首先得介绍一下,在matlab中解常微分方程有两种方法,一种是符号解法,另一种是数值解法.在本科阶段的微分数学题,基本上可以通过符号解法解决.   用matlab解决常微分问题的符号解法的关键命令是d ...

  10. 洛谷P1932 A+B A-B A*B A/B A%B Problem

    P1932 A+B A-B A*B A/B A%B Problem 题目背景 这个题目很新颖吧!!! 题目描述 求A.B的和差积商余! 由于数据有修改,减法运算结果可能带负号! 输入输出格式 输入格式 ...