JAVA调用存储过程实现插入数据,在pl/sql中测试存储过程没有错误,但是在java使用出错
public class LoanDaoImpl implements LoanDao
{
BaseDao bs = new BaseDao();
Connection conn = null;
PreparedStatement pstmt = null;
CallableStatement cstmt = null;
public boolean LoanRequest(int id, String uname, int money, String loantype, String name, String loantime)
{
boolean isFlag=false;
conn = bs.getConnection();
ResultSet rs = null;
try
{
cstmt = conn.prepareCall("{call.Bank.A_LOANREQUEST(?,?,?,?,?,?)}");
cstmt.setString(1, uname);
cstmt.setInt(2, id);
cstmt.setInt(3, money);
cstmt.setString(4, loantype);
cstmt.setString(5, loantime);
cstmt.setString(6, name);
cstmt.execute();
isFlag=true;
}
catch (Exception e)
{
// TODO Auto-generated catch block
e.printStackTrace();
isFlag=false;
}
finally
{
bs.closestore(conn, pstmt, rs, cstmt);
}
return isFlag;
}
错误是:java.sql.SQLException: ORA-06550: 第 1 行, 第 7 列:
PLS-00103: 出现符号 "."在需要下列之一时:
( begin case declare exit for
goto if loop mod null pragma raise return select update while
with <an identifier> <a double-quoted delimited-identifier>
<a bind variable> << continue close current delete fetch lock
insert open rollback savepoint set sql execute commit forall
merge pipe purge
符号 "<an identifier>" 被替换为 "." 后继续。
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:212)
at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:951)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1160)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3285)
at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3390)
at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4223)
at cn.dao.impl.LoanDaoImpl.LoanRequest(LoanDaoImpl.java:32)
at cn.coreserver.CoreServer.main(CoreServer.java:585)
求大神帮帮忙啊!!!