首页 > 其他分享 >mormot2 json操作

mormot2 json操作

时间:2024-08-20 20:49:59浏览次数:6  
标签:end db json jo select mormot2 操作 pool

mormot2 json操作

procedure Tcrud.select;
var
  db: Tdb;
  pool: Tdbpool;
  jo: Tdocvariantdata;
  i: integer;
begin
  jo.init;
  try
    try
      pool := GetDBPool(DBID);
      db := pool.Lock;
      for i := 0 to high(sqls) do
      begin
        DB.select(sqls[i]);
        jo.AddItem(_json(DB.qry.tojsonarraystring));
      end;
      ctxt.SetOutJson(jo.ToJson);
    except
      on E: Exception do
      begin
        ctxt.SetOutJson(error(E.Message));
        WriteLog('db.tables.crud.select()' + E.Message);
      end;
    end;
  finally
    pool.Unlock(db);
  end;
end;                  

  

procedure Tcrud.select;
var
  db: Tdb;
  pool: Tdbpool;
  jo: variant;
  i: integer;
begin
  Tdocvariant.NewFast(jo);
  try
    try
      pool := GetDBPool(DBID);
      db := pool.Lock;
      for i := 0 to high(sqls) do
      begin
        DB.select(sqls[i]);
        jo.r := _json(DB.qry.tojsonarraystring);//dataset-->json
      end;
      ctxt.SetOutJson(variantsavejson(jo));
    except
      on E: Exception do
      begin
        ctxt.SetOutJson(error(E.Message));
        WriteLog('db.tables.crud.select()' + E.Message);
      end;
    end;
  finally
    pool.Unlock(db);
  end;
end;                            

  

标签:end,db,json,jo,select,mormot2,操作,pool
From: https://www.cnblogs.com/hnxxcxg/p/18370309

相关文章

  • Swift操作符重载:编程语言的瑞士军刀
    标题:Swift操作符重载:编程语言的瑞士军刀在Swift编程语言中,操作符重载是一种强大的特性,它允许开发者为自定义类型提供已有操作符的新实现。这不仅提升了代码的可读性,还增加了Swift语言的表达力。本文将深入探讨Swift中操作符重load的机制,并展示如何通过代码示例来实现它。......
  • lg树上操作
    lg树上操作P3258树上差分P1600[NOIP2016]天天爱跑步分开两边处理。对于上升段,如果一个点深度是x=dep_i+w_i,那么i就被贡献我们可以将整个上升段的x位置都加,然后在每个点处统计dep_i+w_i位置的值。每个点开一个vector记录修改操作。不过这样可能会有互相影响......
  • MySQL操作
    数据库类型常用数据类型详细数据类型需要注意的是:BOOLEAN在数据库保存的是tinyInt类型,false为0,true就是1char是定长,varchar是变长,char存储时,如果字符数没有达到定义的位数,后面会用空格填充到指定长度,而varchar没达到定义位数则不会填充,按实际长度存储。比如一个char(1......
  • TreeView和ListView数据库查询数据联动操作
    好久不用了,重新整理下放这里以备需要使用,功能见图数据库表结构定义TreeViewaddObject中data存储的记录集typePNode=^TNode;TNode=recordid:Integer;tcmc:string;mxid:string;end;填充TreeView代码procedureTForm1.FillTree(TreeV......
  • 《面板变系数模型及 Stata 具体操作步骤》
    目录一、文献综述二、理论原理三、实证模型四、稳健性检验五、程序代码及解释六、代码运行结果一、文献综述在经济和社会科学研究领域,面板数据模型因其能够同时考虑个体和时间维度的信息而被广泛应用。传统的面板数据模型通常假设系数是固定的,但现实中,系数可能会随......
  • 汇编语言之门:深入I/O操作的迷宫
    标题:汇编语言之门:深入I/O操作的迷宫在计算机的微观世界中,汇编语言以其与硬件的紧密联系而著称。输入输出(I/O)操作是汇编语言程序中与外部世界交互的重要手段。本文将带你深入探索汇编语言中的I/O操作,揭示其背后的原理,并展示如何通过代码实现基本的I/O功能。汇编语言与I/O操......
  • 汇编语言之门:深入I/O操作的迷宫
    标题:汇编语言之门:深入I/O操作的迷宫在计算机的微观世界中,汇编语言以其与硬件的紧密联系而著称。输入输出(I/O)操作是汇编语言程序中与外部世界交互的重要手段。本文将带你深入探索汇编语言中的I/O操作,揭示其背后的原理,并展示如何通过代码实现基本的I/O功能。汇编语言与I/O操......
  • 第3篇 :git 首次创建项目上传,代码合并操作
    一.首次创建远程代码库,并上传自己修改的本地代码第1步:在自己电脑创建本地项目路径,在这个路径下执行初始化git:命令:gitinit第2步:改分支名称【如果远程仓库,主干的名称是main,而不是master,需要在本地将master改为main,如果主干已经是main则可忽略此步骤,这种情况只出现在gitlab代码......
  • 一款专为内网办公环境设计的操作系统,集成了Word、Excel、PPT、PDF编辑器,内网聊天、白
    前言在当今数字化办公时代,企业面临着多样化的办公需求。现有软件往往存在一些痛点,如操作复杂、兼容性差、资源消耗高,以及在内网环境下的通讯和文件共享不便。这些限制不仅影响了工作效率,也制约了企业的数字化转型。因此,一款能够处理这些问题的软件显得尤为迫切。介绍GodoOS......
  • 致命错误:您当前未在任何分支上操作" - 分支管理指南与解决方案
    fatal:youarenotcurrentlyonabranch在Git中,fatal:youarenotcurrentlyonabranch 是一个常见的错误提示,通常发生在你尝试进行提交(commit)或推送(push)操作时,但你当前并未处于任何分支(branch)上。理解错误原因Git是一个分布式版本控制系统,它允许多个开发者同时在同一......