问题描述
请问我哪个地方写错了?要怎么改?callableStatement=conn.prepareCall("{calldbo.P_GetBomCom_Rt(?)}");callableStatement.setInt(1,3789);sqlserver收到的是EXECdbo.P_GetBomCom_Rt@P0
解决方案
解决方案二:
存储过程dbo.P_GetBomCom_Rt无return最后是个Select*fromcallableStatement=conn.prepareCall("{calldbo.P_GetBomCom_Rt(?)callableStatement.setInt(1,3789);callableStatement.execute();rs=callableStatement.getResultSet();我想这样得到结果但是rs.next()就一直NullPointerException事件探查器declare@p1intset@p1=0execsp_prepexec@p1output,N'@P0int',N'EXECdbo.P_GetBomCom_Rt@P0',3789select@p1EXECdbo.P_GetBomCom_Rt@P0跪求答案
解决方案三:
不是这样写的,存储过程没有返回值,但可以通过设置参数的模式,是in或者是out,in是输入参数,out是输出参数,具体情况自己看书吧,在java程序这边,如果问号是in参数,就要设置其值,如果是out参数,则要注册该参数的数据类型,然后获取。
时间: 2024-10-21 09:35:20