我是一个两天的NetRexx和Java新手。
我尝试修改IBM红皮书示例,以创建在firebird数据库上执行SQL的多线程tcp服务器。
第一次尝试是在这里http://www.compkarori.co.nz:8000/NetRexx/JDBC-bridge.nrx
当我尝试遍历列数据时
loop col=1 to nbr_columns
say 'Column' col
-- say rs.getString(col) -- gives error Message: Column name 1 not found in result set.
if buffer = '' then
buffer = rs.getString(column_name).trim()
else
buffer = buffer || '|' || rs.getString(column_name).trim()
end如果我使用循环计数器作为索引,我会在代码注释中得到一个错误,即:rs.getString(列),因此我求助于使用列名。但如果我这样做:
say rs.getString(1)这很好。这是因为col是一个Rexx字符串,而不是Java整数还是什么?
此外,我必须在每次查询后关闭套接字和线程,否则将得不到任何响应。这是必要的吗?或者我可以让线程继续运行以接受新的查询?
( ps:有人可以添加NetRexx标签吗??)
发布于 2010-07-20 13:31:21
getString方法是重载的,这就是我需要强制使用int值的原因。我想出了如何重用线程和套接字..请注意,只有Oracle和Firebird/Interbase JDBC连接对象看起来是线程安全的
https://stackoverflow.com/questions/3129112
复制相似问题