Ir para conteúdo
Fórum Script Brasil
  • 0

Maior Registro Em Uma Tabela


hencker

Pergunta

5 respostass a esta questão

Posts Recomendados

  • 0

Erso eu estou usando isso:

procedure TMasterCadFuncionarios.TBNovoClick(Sender: TObject);
var
  last_cod, new_cod :Integer;

begin
  inherited;
  with ZCod do
    begin
      Close;
      SQL.Clear;
      SQL.Add('SELECT MAX(funcionario_id) FROM funcionarios');
      Open;
    end;

  last_cod := ZCodfuncionario_id.Value;
  new_cod  := last_cod + 1;

  DBECodigo.Text := IntToStr(new_cod);
end;

Mas ele aponta que não existe a coluna funcionartio_id... já conferi e sei que ela existe e está lá... Tem alguma idéia???

Link para o comentário
Compartilhar em outros sites

  • 0

o que acontece é o seguinte realmente a coluna "funcionario_id" não existe na sua consulta hehehehehhe

a consulta retorna o campo camando o de "MAX"

para retornar com o no me de funcionario_id faça o seguinte

SELECT MAX(CAD_CLi) AS funcionario_id  FROM TABELA 

cara vai funcionar certeza. pra fazer a consulta to vendo que você está usando uma query acho? pra resgatar o registro usa assim.

  last_cod := ZCod.FieldByName(' funcionario_id').AsInteger;
  new_cod  := last_cod + 1;

Vejo que você esta fazendo um auto incremento manual?

Essa forma de pegar o ultimo registro e adicionar mais 1 para servir de chave promária não é o mais indicado.

Pois se o sistema estiver em rede e várias pessoas estiverem cadastrando ao mesmo tempo, pode ocorrer de gravarem o mesmo registro.

:D

Boa sorte!!! e continua postando at seu problema ser resolvido

Link para o comentário
Compartilhar em outros sites

  • 0

 
begin
  With QryIncremento do
begin
  close;
  SQL.Clear;
  SQL.Add('Select MAX(ID_CON) from CONSULTAS');
  open;
end;
  Novo := QryIncremento.Fields[0].AsInteger + 1;
  DMBanco.TBConsultas.Append;
  edCOD.Text := IntToStr(Novo);
  ...
end;
eu to fazendo um sistema e usando incremento manual! mas com um detalhe, apenas o servidor poderá cadastrar. os clientes apenas consultas e alteração. quanto ao erro, estou usando INTERBASE 6 e ele tava gerando este mesmo erro quando eu criava a tabela com o nome dos campos em minúsculo. isso mm. tive qur criar as tabelas todas em maiúsculas. testei duas vezes para ter certeza do erro e era isso. quando fazia uma consulta retorna "Tabela desconhecida" e erros de colunas também semelhante a esse ai do amigo.
CREATE TABLE "AGENDAS" 
(
  "ID_AGE"    INTEGER NOT NULL,
  "DATA"     DATE NOT NULL,
  "HORA"     TIME,
  "STATUS"    CHAR(1) CHARACTER SET ISO8859_1,
  "IMAGE"    BLOB SUB_TYPE 0 SEGMENT SIZE 1,
CONSTRAINT "PK_AGENDAS" PRIMARY KEY ("ID_AGE")
);

CRIANDO A TABELA ASSIM DA CERTO SE EU COLOCAR EM MINÚSCULO GERA O ERRO*.

*OBS: A TABEL A CRIADA NORMALMENTE, MAS NO DELPHI A QUERY APRESENTA O ERRO.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...