当前位置: 首页 > 知识库问答 >
问题:

从应用程序调用存储过程时如何使用sybase存储过程中的print语句

唐俊爽
2023-03-14

我正在使用带有Sybase ASE数据库的powerbuilder。我在从应用程序执行更新时调用存储过程,但在存储过程中出现错误。我想在存储过程中放置一些打印语句以检查错误是什么。如何查看此打印语句的输出?如何记录存储过程?

提前谢谢Sharmistha

共有3个答案

吴俊风
2023-03-14

使用自定义错误记录过程将数据存储在日志表中,并在执行过程中或执行后从中读取错误。

或者,您可以尝试过程中的PRINT语句,看看是否可以将标准输出输出转换为PB。

黄修永
2023-03-14

您可以使用将返回状态代码的函数。在函数中添加“ON EXCEPTION RESUME”子句,并向应用程序返回全局变量@@error。

井高峯
2023-03-14

这些打印语句没有日志,也不被视为结果集的一部分。它们与赛贝斯ASE错误消息位于同一通道中。

它们应该返回到PowerBuilder,在SQLCA中,sqlerrortext是字段。

但这不是我用来调试存储过程的方式。我发现更容易捕获传递给存储过程的参数,并使用Sybase的ISQL命令行工具(而不是Java GUI)查看错误消息。

 类似资料:
  • 问题内容: 我试图在postgres 9.3上使用sql调用函数内的函数。 这个问题与我的另一篇文章有关。 我写了下面的函数。到目前为止,我还没有合并任何类型的save-output(COPY)语句,因此我试图通过创建嵌套函数print-out函数来解决此问题。 以上功能有效。 尝试创建嵌套函数。 调用嵌套函数。 输出 上面给出了这个。但是,当在print_out()中将arg1,arg2替换为’

  • 问题内容: 我有一个需要很多参数的插入存储过程-其中2个是@ FirstName,@ LastName。我还有一个更新存储过程,该过程需要许多参数-其中2个是@ FirstName,@ LastName。 我想做的是,从插入SP内部完成之后,调用更新SP并将其发送给@ FirstName,@ LastName。 我不知道这样做的正确语法;我试过了: 但我认为这是错误的。 有人可以告诉我怎么写这个电

  • 问题内容: 我在任何地方都找不到此答案,但是可以从MySQL中的另一个存储过程调用存储过程吗?我想找回标识值,并在父存储过程中使用它。我们不能再使用FUNCTIONS! 问题答案: 参数应该可以帮助您将值返回给调用过程。基于此,解决方案必须是这样的。

  • 我使用JDBC这样调用这个过程: 它向我抛出一个错误,通知调用格式错误。 但是如果我像这样直接在IDE中运行调用:

  • 从1.r.58开始, 支持出参, 之前的版本仅支持入参. 从实现方式上说, 是通过扩展自定义SQL的含义及上下文来实现 仅含义入参的存储过程 // 建表,删除老的存储过程. dao.create(Pet.class, true); dao.insert(Pet.create("wendal")); dao.execute(Sqls.create("DROP PRO

  • 我有一个在包中定义的存储过程。该过程接受两个参数,一个是游标: 我是这样调用这个过程的: 它将返回以下错误: 你好,阿尼尔班。