How to invoke the procedure in SQL server 2005

This is the text that describes the procedure call of SQL server in java side.


public static final String GET_NEXT_KEY ="{call NEXT_KEY(?,?)}";

/**

       * Get Sequence key for internal user registration

       * @param keyType 

       * @return String

       * @throws DAOException

       */

      public LonggetNextKey(String keyType)throws DAOException{

            Connection conn = null;

            CallableStatement stmt = null;

            ResultSet rs = null;               

            Long nextKey = null;

            try {

                  conn = ConnectionSQLServerFactory.getConnection();

                  conn.setAutoCommit(false);

                  conn.setTransactionIsolation(Connection.TRANSACTION_REPEATABLE_READ);

              

                  String sql = SQLConstants.GET_NEXT_KEY;

                  stmt = conn.prepareCall(sql);

                  stmt.registerOutParameter(1,Types.BIGINT); 

                  stmt.setString(2, keyType);

                  stmt.executeUpdate();

                  nextKey = stmt.getLong(1);   

                  DbUtils.commitAndClose(conn);

            return nextKey;

        } catch (Exception e) {

            DbUtils.rollbackAndCloseQuietly(conn);

           iBwLog.error(logContext, EVENTS.ADHOC, "MemberDAOImplcall getNextKey failed", e);

            throw newDAOException(e.getMessage(),e);

        } finally {

            DbUtils.closeQuietly(conn,stmt, rs);

        }        

      }


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值