Fórum Delphi com MySql. Como achar o próximo código de uma tabela #333761

26/11/2006

0

Amigos,

Estou usando Delphi e Mysql e estou necessitando incrementar um campo com um valor que é o maior valor já armazenado pra ele + 1. Estou usando o seguinte código e está dando erro na hora de abrir a query.
Dm.QrAux.Close;
Dm.QrAux.SQL.Clear;
Dm.QrAtos.SQL.Add(´SELECT MAX(WCODIGO)+1 AS PROXIMOCODIGO FROM SACADO_CEDENTE´);
Dm.QrAux.Open;
Result := Dm.QrAux.fieldByName(´PROXIMOCODIGO´).AsInteger;

Alguém pode sugerir um código ou ver o que está de errado com esse ?
Já alterei o Fieldbyname por Params, FieldList e não consegui.

Um abraço a todos.


Winfor

Winfor

Responder

Posts

27/11/2006

Alex Maia

Vê se este aqui funciona amigo:

// Função para autoincremento
Function Inc_Tabela(Nome_Tabela : String; Chave_Primaria : String):Integer;
var Qry: TSqlQuery;
begin
Qry := TSqlQuery.Create(nil);

try
Qry.Connection:= DM.SqlConnection;

//Pega o código de incremento
Qry.SQL.Text := ´SELECT MAX(´+Chave_Primaria+´) FROM ´+ Nome_Tabela;
Qry.Open;
if Qry.Fields[0].IsNull then
Inc_Exibidor := 1
else
Inc_Exibidor := Qry.Fields[0].AsInteger + 1 ;

Qry.Close;
finally
FreeAndNil(Qry);
end;
end;


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar