[firebase-br] Gravar dados

Vander vanderleif em dimper.com.br
Qua Nov 8 12:22:34 -03 2006


***********************
Sua mensagem foi verificada pelo InterScan MSS.
***********-***********


Bom Dia a todos.

Estou usando a seguinte rotina para gravar registro no banco e esta funcionando quase que corretamente , tenho um campo chamado LOC_ID esse campo é PK e tb autoincremento e tb um campo chamado NOME varchar,
eu sei que o campo LOC_ID não pode ser duplicado , mas o campo NOME pode ser , ae esta o meu problema como eu fasso para tb não deixar gravar duplicidade do campo NOME , tem como verificar antes de gravar se já existe o NOME digitado ?  por exemplo o cliente vai cadastrar um filme e no campo NOME ele vai digitar o filme até aki sem problema automaticamente vai ser gerado um LOC_ID e vai ser gravado o filme , mas o problema é se ele por acaso for cadastrar o mesmo filme ele tb vai conseguir pois o mas com outro LOC_ID .


procedure TFRM_Consulta_Locadora.SpeedButton3Click(Sender: TObject);
var
    td:TTransactionDesc;
begin
    // incluir na USES dbxpress
    if MessageDlg('Deseja Realmente Excluir o Registro ?',mtConfirmation,[mbyes,mbno],0)=mryes then
    begin
    if not DM_LVS.DB_Locadora.InTransaction then
    begin
        TD.TransactionID:=1;
        TD.IsolationLevel:=xilREADCOMMITTED;
        DM_LVS.DB_Locadora.StartTransaction(TD);
    end;
    if DM_LVS.CDS_Locadora.State in[dsinsert]then
    begin
        DM_LVS.SP_Locadora.ExecProc;
        DM_LVS.CDS_LocadoraLOC_ID.Value:=DM_LVS.SP_Locadora.Params[0].value;
    end;
        DM_LVS.CDS_Locadora.delete;
    Try
        if (DM_LVS.CDS_Locadora.ChangeCount>0)then
            DM_LVS.CDS_Locadora.ApplyUpdates(-1);
            DM_LVS.DB_Locadora.Commit(td);
    except
        DM_LVS.DB_Locadora.Rollback(td);
    end;
       //DMos.CDSClientes.Insert;
       DM_LVS.CDS_Locadora.Append;
    end;      

end;

end.

Desde já agradeço pela atenção de todos.





Atenciosamente,
Vanderlei
Help Desk / RS
08007013700
vanderleif em dimper.com.br



Mais detalhes sobre a lista de discussão lista