调用Java程序如下:
.....
CallableStatement cs = null;
cs = conn.prepareCall("{call sp_rankquery(?,?)}");
cs.setString(1, badge);
cs.setString(2, aEntity.getPassword());rs = cs.executeQuery();
......存储过程为:
CREATE PROCEDURE sp_rankquery @workernumber0 nvarchar(50),@password0 nvarchar(16) AS
If exists(select ID from account where Password=@password0 and ID=@workernumber0)
select rank from account where rank is not NULL and rank<>'不聘' and rank <>'待定' and Password=@password0 and ID=@workernumber0
GO报错如下:
在cs.setString(1, badge);位置报java.lang.NullPointerException注: connection没有问题,其他数据库操作都可以.
.....
CallableStatement cs = null;
cs = conn.prepareCall("{call sp_rankquery(?,?)}");
cs.setString(1, badge);
cs.setString(2, aEntity.getPassword());rs = cs.executeQuery();
......存储过程为:
CREATE PROCEDURE sp_rankquery @workernumber0 nvarchar(50),@password0 nvarchar(16) AS
If exists(select ID from account where Password=@password0 and ID=@workernumber0)
select rank from account where rank is not NULL and rank<>'不聘' and rank <>'待定' and Password=@password0 and ID=@workernumber0
GO报错如下:
在cs.setString(1, badge);位置报java.lang.NullPointerException注: connection没有问题,其他数据库操作都可以.
改为
{call sp_rankquery('XXXXXX','123456')}没报错,可以运行.怎么会这样?
cs = conn.prepareCall("{call sp_rankquery('"+ badge + "','" + aEntity.getPassword() + "')}");就可以了,想不通
摘自http://www.knowsky.com/1674.html楼主可以看看先