[firebase-br] Firebird X Transacao X .NET

Marcelo Moreira marcelomoreira.souza em gmail.com
Qui Ago 19 11:46:37 -03 2010


Magno,
Como se trata de uma aplicação Web é uma boa pratica sempre fechar a conexao
quando nao se precisa mais dela.

Valew!

Em 19 de agosto de 2010 10:25, Magno System <
magnosysteminformatica em gmail.com> escreveu:

> Marcelo, não programo em .NET mas pelo que eu ACHO que entendi do código
> você abre e fecha a conexão a cada transação. Não é necessário fechar a
> conexão. Abra e feche somente a transação.
>
>
> ----- Original Message ----- From: "Marcelo Moreira" <
> marcelomoreira.souza em gmail.com>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Thursday, August 19, 2010 10:13 AM
> Subject: [firebase-br] Firebird X Transacao X .NET
>
>
>
> Pessoal,
> Depois que comecei a implementar controle de transação em um aplicativo
> .NET
> usando o Firebird notei que o sistema ficou um pouco mais lentro para
> executar as operações no banco. Isso é normal? Seria devido ao uso "agora"
> dos controles de transacoes?
> Deixo abairo um pedaco do codigo, sera que eu estou fazendo algo errado?
>
>           IDataReader iDataReader = null;
>           StringBuilder sbSql = new StringBuilder();
>           sbSql.Append("select USERPASSWORD from CUSTOMER_USER where
> USERNAME = @USERNAME");
>
>           FbCommand fbCommand = new FbCommand();
>           FbTransaction fbTransaction = null;
>
>           try
>           {
>               this.firebirdConnection.Open();
>               fbTransaction =
> this.firebirdConnection.FbConnection.BeginTransaction();
>               fbCommand.Connection = this.firebirdConnection.FbConnection;
>               fbCommand.Transaction = fbTransaction;
>               fbCommand.CommandType = CommandType.Text;
>               fbCommand.CommandText = sbSql.ToString();
>               fbCommand.Parameters.Clear();
>               fbCommand.Parameters.Add("USERNAME", UserName);
>               iDataReader = fbCommand.ExecuteReader();
>               while (iDataReader.Read())
>               {
>                   passwordBD = iDataReader["USERPASSWORD"].ToString();
>               }
>               iDataReader.Close();
>               fbTransaction.Commit();
>           }
>           catch (Exception ex)
>           {
>               fbTransaction.Rollback();
>               throw new Exception(ex.Message);
>           }
>           finally
>           {
>               iDataReader.Dispose();
>               fbCommand.Dispose();
>               fbTransaction.Dispose();
>               this.firebirdConnection.Close();
>           }
>
> No caso estou usando o Firebird 2.1.3
>
> Obrigado a todos pela atenção.
>
> --
> Marcelo Moreira
> (31) 8420-2723
> E-mail / MSN: marcelomoreira.souza em hotmail.com
> E-mail: marcelomoreira.souza em gmail.com
> Skype: marcelomoreira.souza
>  ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



-- 
Marcelo Moreira
(31) 8420-2723
E-mail / MSN: marcelomoreira.souza em hotmail.com
E-mail: marcelomoreira.souza em gmail.com
Skype: marcelomoreira.souza



Mais detalhes sobre a lista de discussão lista