如何得到AdoConnection.execute(sqlstr)执行的返回结果

如何得到AdoConnection.execute(sqlstr)执行的返回结果?

1:

TAdoConnection.execute有procedure、function的两种定义,function返回_RecordSet类型。可以这样调用:

rec:_Recordset;
n:integer;
rec:=conn.Execute(sqlStr);
if (assigned(rec)) and (not rec.eof) n:=rec.Fields[0].Value;

......
IstValue := conn.Execute(sqlstr)(0)
SecValue := conn.Execute(sqlstr)(1)
......

2:

另一种方法(摘自【IT168知识库】,原文:http://tech.it168.com/KnowledgeBase/Articles/2/d/7/2d7bc875400ab8bc74aff74553f7e129.htm):
Connection.execute后操作完成后将触发onExecuteComplete事件:
ExecuteComplete RecordsAffected, pError, adStatus, pCommand, pRecordset, pConnection
参数:
RecordsAffected:长整型值,命令所影响的记录数目。
pError:Error对象,说明当adStatus值为adStatusErrorsOccured时所发生的错误,否则将不对它进行设置。
adStatus:EventStatusEnum状态值,当调用该方法时,如果引发事件的操作成功,该参数设置为adStatusOK,如果操作失败,则设置为adStatusErrorsOccurred。
在此方法返回前,将该参数设置为 adStatusUnwantedEvent 可避免后续的通知。
pCommand:所执行的 Command 对象(如果有)。
pRecordset:Recordset对象,执行的结果。该记录集可以为空。
pConnection:Connection对象,执行命令所针对的连接。

说明:
ExecuteComplete事件可因Connection.Execute、Command.Execute、Recordset.Open或Recordset.NextRecordset而发生。

时间: 2024-10-25 19:05:24

如何得到AdoConnection.execute(sqlstr)执行的返回结果的相关文章

Selenium2学习-036-WebUI自动化实战实例-034-JavaScript 在 Selenium 自动化中的应用实例之六(获取 JS 执行结果返回值)

Selenium 获取 JavaScript 返回值非常简单,只需要在 js 脚本中将需要返回的数据 return 就可以,然后通过方法返回 js 的执行结果,方法源码如下所示: 1 /** 2 * Get Object of return from js 3 * 4 * @author Aaron.ffp 5 * @version V1.0.0: autoSeleniumDemo main.aaron.sele.core SeleniumCore.java execJSR, 2015-8-9

执行带返回值的存储过程

记录下执行带返回值的存储过程 1.定义变量接收返回值@out [email protected]_product_catalogID = @out 定义返回值用@out接受,标记output GO--带返回值的存储过程执行DECLARE @out INT EXECUTE dbo.tb_product_catalog_INSERT @name = N'测试', -- nvarchar(100) @brand_id = 0, -- int @parent_id = 0, -- int @custid

在命令行处理 console 应用执行的返回值

在命令行处理 console 应用执行的返回值. 新建一 Win32 Console 工程: CompareDirs 代码如下(VS2008 默认生成的代码): 1 // CompareDirs.cpp : 定义控制台应用程序的入口点. 2 // 3 4 #include "stdafx.h" 5 #include "CompareDirs.h" 6 7 #ifdef _DEBUG 8 #define new DEBUG_NEW 9 #endif 10 11 12

执行AJAX返回HTML片段中的JavaScript脚本

如果AJAX加载的数据是一个HTML片段,而且这个HTML片段还包含脚 本<script>块,那么在你把这数据xmlHttp.responseText用innerHTML方法插入到当前文档一个元素中,你会 发现AJAX加载回来的脚本根本没有执行.这是AJAX开发中很常见的问题,如果你不是一直在用JavaScript框架做开发,相信你早就发现这个问题 了.本文分析了两个解决办法,其中一个是讲解jQuery框架的实现. 一. 问题描述 下面举个简单的例子,演示问题所在.在下面的例子中,假设变量re

MyBatista主键映射,执行inset返回主键

有点时候,我们的业务需要执行了insert语句后再返回主键,这时可以使用主键映射 首先,定义sql,以MySQL为例 1 <insert id="addUser" useGeneratedKeys="true" keyProperty="user_id" parameterType="com.entity.User"> 2 insert into user(name,xes,age)values('jack','男

Oracle&gt;&gt;通过PL/SQL程序块判断,指定用户的指定数据表和序列是否存在,如果存在则删除,否则新创建。并且为表添加含有字符串数据,execute immediate执行insert语句中有字符串解决办法

--变量声明 declare num0 number; num1 number; begin --判断用户为:SYSTEM的数据库中是否存在相关数据表和序列,存在则删除,不存在则新创建,DBMS_OUTPUT.put_line等同java中的System.out.println输出语句 DBMS_OUTPUT.put_line('正在初始化数据库信息,请稍后......'); --以下参数说明: --所涉及到的参数值必须为大写 --sequence_owner:指定哪个数据库用户的序列: seq

C#执行oracle返回游标类型的存储过程

C#执行oracle存储过程,存储过程代码为: create or replace procedure proc_test(pCursor OUT pak_pub.ut_cursor) AS begin open pCursor for select * from scott.emp; end proc_tes; 其中pak_pub.ut_cursor的定义为: create or replace package pak_pub as type ut_cursor is ref cursor;

java 代码执行cmd 返回值异常

java 代码中调用cmd 命令执行 mysql 脚本结果 cmd 命令返回结果为1的问题: Process process = Runtime.getRuntime().exec(cmd);int waitFor = process.waitFor(); 上边waitFor值为1,而值为0才是执行正常,那我怎么才能知道这个执行结果是因为什么出错的呢?可以把出错信息打印出来就行了,process对象 有一个异常流,打印一下就好了: FileInputStream errorStream = (F

Mybatis执行Update返回行数为负数

获取mybatis的update行数,总是返回负数.后来在官网上找到原因,是由于defaultExecutorType的引起的,defaultExecutorType有三个执行器SIMPLE.REUSE和BATCH.其中BATCH可以批量更新操作缓存SQL以提高性能,但是有个缺陷就是无法获取update.delete返回的行数.defaultExecutorType的默认执行器是SIMPLE. 名称 描述 SIMPLE 执行器执行其它语句 REUSE 可能重复使用prepared stateme