从sqlserver获取打印消息到java应用程序

时间:2015-04-25 08:58:43

标签: java android sql-server servlets

我有一个存储过程,它打印一个简单的字符串:

create proc proc1  
as  
print 'Hello World !'

我有一个Android应用程序,它使用servlet(用Java编写)来连接 SQL server 数据库。下一个代码在servlet中:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con1 = DriverManager.getConnection("Jdbc:Odbc:abc");
CallableStatement cstmt=con1.prepareCall("{call proc1}");
cstmt.execute();

工作正常。该程序正在激活,但现在,我想要 获取打印消息'Hello world!'但以下代码没有 工作, SQLWarning 始终为空:

SQLWarning warning = cstmt.getWarnings();
while (warning != null)
{
   System.out.println(warning.getMessage());
   warning = warning.getNextWarning();
}    

我的问题是如何获取打印消息? P.S   使用raiserror而不是print也不行。   我已经知道输出参数的选项(我研究了这个主题已有近一个星期)。如果您允许,我想请求另一种选择。

1 个答案:

答案 0 :(得分:0)

我不确定如何在Java中实现它。但是,由于this article(不是接受的答案)提示打印作品的工作方式不同,并且不会产生“警告”。您可以考虑使用raiserror。同样,这个Blog article描述了如何使用SqlInfoMessageEventHandler来获取信息消息。