Re: [firebase-br] Dúvidas com Procedure

Kleber Caneva kdcc em terra.com.br
Qui Abr 12 09:21:41 -03 2007


O FB2 exige que você identifique atráves de alias cada campo relacionado no 
Select quando mais de uma tabela fizer parte do mesmo.

O Select que vc está usando é esse:
SELECT *
FROM usuario, perfil
WHERE usuario.nivel=perfil.id
     AND fantasia = ?
    AND senha = ?

Você tem que dizer a quem os campos fantasia e senha pertencem.
Ex:
SELECT *
FROM usuario, perfil
WHERE usuario.nivel=perfil.id
     AND usuario.fantasia = ?
    AND usuario.senha = ?

[]´s

Kléber Caneva

----- Original Message ----- 
From: "CPD - Civiam" <cpd em civiam.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Thursday, April 12, 2007 8:45 AM
Subject: [firebase-br] Dúvidas com Procedure


Untitled DocumentAmigos em meu form de login a procedure abaixo funciona no 
Interbase, porém queria migrar para o Firebird 2 e a  mesma procedure não 
enxerga os registros cadastrados no banco. Alguma dica?
Segue procedure:
procedure TLogin.BitBtn1Click(Sender: TObject);
var
strSqlLog: string;
mensagem: string;
  begin
        strSqlLog:='SELECT * FROM usuario, perfil WHERE 
usuario.nivel=perfil.id ';
        strSqlLog:=strSqlLog + 'AND fantasia = ' + #39 + (valorNome.Text) + 
#39 ;
        strSqlLog:=strSqlLog + 'AND senha = ' + #39 + (valorSenha.Text) + 
#39 ;
        menuPrin.QueryLogin.Close;
        menuPrin.QueryLogin.SQL.Clear;
        menuPrin.QueryLogin.SQL.Add(strSqlLog);
        menuPrin.QueryLogin.Open;
        if(menuPrin.QueryLogin.FieldByName('status').AsString='N') then
            begin
                mensagem:='Você está cadastrado no sistema mas não ' + #13
                + 'possui autorização para usá-lo neste momento. ' + #13 + 
#13
                + 'Consulte o Suporte Técnico.';
                Application.MessageBox(PChar(mensagem), 'Login não 
autorizado', MB_Ok+mb_IconError);
                menuPrin.Close;
            end
        else
        begin
            if(menuPrin.QueryLogin.RecordCount)=1 then
                begin
                    menuPrin.StatusBar1.Panels[2].Text:=' '+'Usuário: '+ 
login.ValorNome.Text +
                    ' - ' + 
menuPrin.QueryLogin.FieldByName('dpto').AsString;
                    menuPrin.Logoff.Caption:='Logoff de: '+ 
menuPrin.QueryLogin.FieldByName('fantasia').AsString;
                    menuPrin.Logoff.Hint:='Logoff de: '+ 
menuPrin.QueryLogin.FieldByName('fantasia').AsString;
                    login.Close;
                end;
            if(menuPrin.QueryLogin.RecordCount)=0 then
                begin
                    mensagem:='Nome ou senha do usuário inválidos.' + #13 + 
#13
                    + 'Se você esqueceu sua senha, consulte ' + #13
                    + 'o Suporte Técnico.';
                    Application.MessageBox(PChar(mensagem), 'Login não 
autorizado', MB_Ok+mb_IconError);
                    ValorSenha.Text:='';
                    ValorSenha.SetFocus;
                end;
        end;
  end;
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço 
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa

Esta mensagem foi verificada pelo E-mail Protegido Terra.
Scan engine: McAfee VirusScan / Atualizado em 11/04/2007 / Versão: 
5.1.00/5006
Proteja o seu e-mail Terra: http://mail.terra.com.br/






Mais detalhes sobre a lista de discussão lista