[firebase-br] Mais uma dúvida para executar procedure em C#?

Marcelo Guilherme Tamanini marcelo_tamanini em hotmail.com
Sex Fev 13 09:51:43 -03 2009


Bom dia,
pessoal.

Estou com mais um problema para executar um procedure em C#, estou tentando receber todos os usuários cadastrados, através da seguinte procedure:
begin
  FOR SELECT CodUsuario, Usuario, Senha
  FROM TB_Usuario
  WHERE Usuario <> 'Admin'
  INTO :CodUsuario, :Usuario, :Senha
  DO
  suspend;
end

Eu já testei a procedure e está me retornando os registros normalmente.


E no código em C# utilizo o DataAdapter:
DataTable dtbUsuario = new DataTable();

FbDataAdapter fdaUsuario = new FbDataAdapter("EXECUTE PROCEDURE STP_ListaUsuario", Dados.StringDeConexao);

fdaUsuario.Fill(dtbUsuario);

return dtbUsuario;

No fim, não gera nenhum erro, mas também não me traz nenhum registro!

Outra forma que eu fiz em C# foi utilizando o ExecuteReader(), mas tb não me trouxe nada, assim como não gerou erro:
    FbCommand fcmUsuario = new FbCommand("EXECUTE PROCEDURE STP_ListaUsuario", fcnUsuario);
    fcmUsuario.CommandType = CommandType.StoredProcedure;
    List<Usuario> listaUsuario = new List<Usuario>();
    FbDataReader fdrUsuario;
    Usuario usuario;

    try
    {
            fcnUsuario.Open();
            fdrUsuario = fcmUsuario.ExecuteReader();

            while (fdrUsuario.Read() == true)
            {
                usuario = new Usuario();
                usuario.Codigo = Convert.ToInt32(fdrUsuario["CodUsuario"]);
                usuario.Nome = Convert.ToString(fdrUsuario["Usuario"]);
                usuario.Senha = Convert.ToString(fdrUsuario["Senha"]);

                listaUsuario.Add(usuario);
            }
            fdrUsuario.Close();

O que eu estou fazendo de errado agora?

Abraço

_________________________________________________________________
News, entertainment and everything you care about at Live.com. Get it now!
http://www.live.com/getstarted.aspx


Mais detalhes sobre a lista de discussão lista