Bruno,

e vc sabe me dizer se existe algum driver tipo 4 free para MS-SQL Server?

[]'s

---------------------------------------------
Joao Pedro M. F. Monoo
Infortrade Information Systems
----- Original Message -----
From: Bruno Diniz de Paula <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Ter�a-feira, 28 de Mar�o de 2000 18:39
Subject: Re: [SouJava-J] JDBC-ODBC e Statement ocupado



Oi Joao,

o que acontece eh exatamente o que voce detalhou. Com a ponte
jdbc:odbc usando SQLServer voce nao consegue abrir mais de um ResultSet em
uma mesma conexao. O driver ODBC para SQLServer nao implementa essa
funcionalidade. Tenho duas sugestoes:

- no caso de uma aplicacao multitarefa, cada thread poderia ter
sua propria conexao, o que solucionaria o seu problema com multithreading,
apesar de ser pior em termos de desempenho.

- voce deve conseguir o driver tipo 4 (100% java) do
SQLServer. Nao tenho certeza, mas acho que ele implementa a funcionalidade
de mais de um ResultSet/comando por conexao. Alem disso, o desempenho dele
comparado com a ponte jdbc:odbc eh bem melhor.

Espero ter ajudado...

Abracos,

Bruno.


On Tue, 28 Mar 2000, Joao Pedro M. F. Monoo wrote:

> Caros ALLmigos,
>
> Estou enfrentando problemas com o acesso a um sql server 7.0 via ponte
> jdbc-odbc
>
> aparentemente oque ocorre eh que apos executar uma query, nao pode ser
> realizar uma nova, ate que o objeto statement que da query inicial tenha
> sido fechado.... Isso eh muito ruim pensando-se em uma aplicacao
multitarefa
> que pode realizar muitas consultas ao banco de dados simultaneas....
>
> Quando executo codigo abaixo. eh gerado o seguinte erro
>
> [Microsoft][ODBC SQL Server Driver]Conexao ocupada com os resultados de
> outro HSTMT
>
>
>
>        ResultSet rs;
>        Statement st;
>
>       st = conexaobd.createStatement();
>       rs = st.executeQuery("SELECT codigo FROM tabela");
>
>       rs.next();
>       System.out.println(rs.getInt("codigo"));
>
> /* A primeira execucao funciona, mas a segunda, abaixo, nao.... */
>
>
>
>       st1 = conexaobd.createStatement();
>       rs1 = st1.executeQuery("SELECT codigo1 FROM tabela1");
>
>       rs1.next();
>       System.out.println(rs1.getInt("codigo1"));
>
> Se alguem puder me ajudar, agradeceria muito!
>
> []'s
>
>
> Joao Pedro
>
>     --------------------------- 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]
>     [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
>     ---------------------------------------------------------------------
>


______________________________________________________________
Bruno Diniz de Paula
[EMAIL PROTECTED] - UFMG
[EMAIL PROTECTED] - Telemig Celular

"Coracoes ao alto e pes no chao."

"A verdadeira experiencia com Deus nao nos faz
 fugir da realidade, mas nos da forcas para
 enfrenta-la e transforma-la."

Pe. Zeca

    --------------------------- 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]
    [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
    ---------------------------------------------------------------------



    --------------------------- 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]
    [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
    ---------------------------------------------------------------------

Responder a