Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 创建返回jdbc语句的sybase存储过程。getWarning_Java_Jdbc_Sybase - Fatal编程技术网

Java 创建返回jdbc语句的sybase存储过程。getWarning

Java 创建返回jdbc语句的sybase存储过程。getWarning,java,jdbc,sybase,Java,Jdbc,Sybase,我正在创建一个通过JDBC调用的sybase存储过程。在某些错误情况下,我希望存储过程向JDBC调用方返回警告。我需要向存储过程添加什么以便 Statement.getWarnings() 返回包含我选择的错误消息的SqlWarning?除非我弄错了,否则可以使用错误消息处理程序将SQL异常重新映射到SQL警告。有关更多信息,请参阅。有关如何创建自定义消息处理程序的信息,请参见第2章“处理错误消息”一节 当然,这意味着您仍然必须通过存储过程中的raiserror来引发错误,唯一的好处是您可以将

我正在创建一个通过JDBC调用的sybase存储过程。在某些错误情况下,我希望存储过程向JDBC调用方返回警告。我需要向存储过程添加什么以便

Statement.getWarnings()

返回包含我选择的错误消息的SqlWarning?

除非我弄错了,否则可以使用错误消息处理程序将SQL异常重新映射到SQL警告。有关更多信息,请参阅。有关如何创建自定义消息处理程序的信息,请参见第2章“处理错误消息”一节

当然,这意味着您仍然必须通过存储过程中的raiserror来引发错误,唯一的好处是您可以将某些错误重新映射到警告。消息处理程序的复杂性将与存储过程引发的用户错误数成正比


当您从存储过程引发错误时,将引发SQLExceptions而不是SQLWarnings,原因是Sybase会自动将用户错误的严重性设置为16,称为“杂项用户错误”。严重级别为16的错误将自动转换为SQLExceptions。

除非我弄错了,否则可以使用错误消息处理程序将SQL异常重新映射为SQL警告。有关更多信息,请参阅。有关如何创建自定义消息处理程序的信息,请参见第2章“处理错误消息”一节

当然,这意味着您仍然必须通过存储过程中的raiserror来引发错误,唯一的好处是您可以将某些错误重新映射到警告。消息处理程序的复杂性将与存储过程引发的用户错误数成正比

当您从存储过程引发错误时,将引发SQLExceptions而不是SQLWarnings,原因是Sybase会自动将用户错误的严重性设置为16,称为“杂项用户错误”。严重级别为16的错误将自动转换为SQLExceptions