Na sua procedure vc deve fazer o seguinte :
1. Após o END vc esqueceu de dar um select na sua variavel, com isto irá
forçar a sp retornar alguma coisa

select @cdPadraoEscola


Espero ter ajudado!!!

Atenciosamente,



 <<...OLE_Obj...>> 
  Marcos Nastri
  Líder de Projetos
  e-mail: [EMAIL PROTECTED]
         Gennari & Peartree Projetos e Sistemas
         Divisão 7 - Engenharia de Software
                  Telefone:  256-6900 ramal 2526

-----Mensagem original-----
De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
Enviada em: Thursday, July 26, 2001 12:40 PM
Para: [EMAIL PROTECTED]
Assunto: [java-list] Como obter o parametro de retorno de uma Stored
Procedure em SQL 7.0


Bom Tarde Pessoal


   Eu sou novo por aqui, e gostaria que alguém pudesse me ajudar com a
seguinte duvida, estou usando uma procedure em SQL Server 7.0, quero pegar
um parametro de output, só que já tentei de várias formas e não consegui se
alguém puder dar um help estou passando o codigo abaixo da Stored e da
funcao em Java:

Stored:
CREATE procedure spCadastraPadraoEscola (
                @cdTipoSistNotaEscola int,
                @cdColegio int,
                @cdAno int,
                @cdMes int,
                @cdNotasDecimais int,
                @cdSistArredondamento int,
                @cdTpEnsino int,
                @nmSistEscola varchar(40),
                @flNumerico bit,
                @cdPadraoEscola int output) AS 
 
BEGIN
 
 
        insert into tb_padrao_escola (  
                                        cd_tipo_sist_escola, 
                                        cd_escola, 
                                        cd_ano_letivo, 
                                        cd_mes_letivo, 
                                        cd_nota_decimais, 
                                        cd_sist_arredondamento, 
                                        cd_tp_ensino, 
                                        nm_padrao_escola, 
                                        fl_numerico, 
                                        dt_ult_alteracao) 
        values (                                
                                        @cdTipoSistNotaEscola, 
                                        @cdColegio, 
                                        @cdAno, 
                                        @cdMes,
                                        @cdNotasDecimais, 
                                        @cdSistArredondamento, 
                                        @cdTpEnsino, 
                                        @nmSistEscola, 
                                        @flNumerico, 
                                        getdate());

    if @@RowCount > 0  select @cdPadraoEscola = @@identity from
tb_padrao_escola;
 

END


Código Java:
public int adicionaRetornaCdPadraoEscola() throws java.sql.SQLException,
ClassNotFoundException {
        int intRetorno = 0;
        try {
                // Setando o driver a ser usado
                Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
                // Efetuando a conexao
                Connection con =
DriverManager.getConnection(getConexao().getUrl(),getConexao().getLogin(),ge
tConexao().getPassword());
                // Criando o comando para executar a stored procedure
                String strSql ;
                /*strSql = " {call spCadastraPadraoEscola (" +
this.cdTipoSistEscola + " ," +  
        
this.cdEscola + ", " + 
        
this.cdAnoLetivo + ", " + 
        
this.cdMesLetivo + ", " +
        
this.cdNotaDecimais + ", " + 
        
this.cdSistArredondamento + ", " +
        
this.cdTpEnsino + ", '" + 
        
this.nmPadraoEscola + "', " + 
        
this.flNumerico + ", " + 
        
this.cdPadraoEscola + ")}";*/
                strSql = "{call spCadastraPadraoEscola (?, ?, ?, ?, ?, ?, ?,
?, ?, ?)}";
                CallableStatement csSistemaPadraoEscola =
con.prepareCall(strSql);
                csSistemaPadraoEscola.setInt(1, this.cdTipoSistEscola);
                csSistemaPadraoEscola.setInt(2, this.cdEscola);
                csSistemaPadraoEscola.setInt(3, this.cdAnoLetivo);
                csSistemaPadraoEscola.setInt(4, this.cdMesLetivo);
                csSistemaPadraoEscola.setInt(5, this.cdNotaDecimais);
                csSistemaPadraoEscola.setInt(6, this.cdSistArredondamento);
                csSistemaPadraoEscola.setInt(7, this.cdTpEnsino);
                csSistemaPadraoEscola.setString(8, this.nmPadraoEscola);
                csSistemaPadraoEscola.setInt(9, this.flNumerico);
                csSistemaPadraoEscola.setInt(10, this.cdPadraoEscola);


                boolean executou = csSistemaPadraoEscola.execute();

                intRetorno = csSistemaPadraoEscola.getInt(10);
        
                ResultSet result = csSistemaPadraoEscola.executeQuery();
                intRetorno = result.getInt(0);
                if (csSistemaPadraoEscola != null)
csSistemaPadraoEscola.close();
                if (con != null) con.close();
                
                return intRetorno;

        } catch (SQLException e) {
                System.out.println(" Erro [ adicionaRetornaCdPadraoEscola ]"
+ e);
                throw e;
        } catch (ClassNotFoundException c) {
                System.out.println(" Erro [ adicionaRetornaCdPadraoEscola ]"
+ c);
                throw c;
        }

        
}


Se algúém puder dar uma força


Valeu 

Olinto


------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------




------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------

Reply via email to