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

(Resolvido) Índices no MySQL


José Luiz

Pergunta

Estou tentando utilizar o Banco de Dados MySQL ( InnoDB ), porém tenho algumas dúvidas.

Criei uma tabela de Clientes, que contém campos indexados por CODIGO, NOME, CEP e CPF.

Em um Form, coloquei um DBGrid, acessando a tabela como Table ( não como SQL ).

Como faço para trocar o índice corrente, clicando no Título como faço com o Paradox ?

No Paradox, coloco no onTitleClick

if Column.Field.DisplayName = 'CODIGO' then Table1.IndexFieldNames := 'CODIGO' ;

if Column.Field.DisplayName = 'NOME' then Table1.IndexFieldNames := 'NOME' ;

if Column.Field.DisplayName = 'CEP' then Table1.IndexFieldNames := 'CEP' ;

if Column.Field.DisplayName = 'CPF' then Table1.IndexFieldNames := 'CPF' ;

DBGrid1.SetFocus;

Com este procedimento simples, troco o índice que está sendo utilizado e permaneço no mesmo registro que estava anteriormente.

Não sei como alterar o índice no MySQL.

Obrigado,

José Luiz

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

exemplo usando o ZTable:

procedure TForm1.Button1Click(Sender: TObject);
begin
   // o campo da tabela deve estar indexado
   ZTable1.IndexFieldNames := 'EMPRESA';
end;

se voce for usar o onTitleClick do DBgrid já é um pouco diferente, e o ideal seria usar o ZQuery

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

Coloquei 4 botões, com as seguintes instruções:

procedure TF_INICIO.BitBtn1Click(Sender: TObject);
begin
  pessoas.IndexFieldNames := 'id';
end;

procedure TF_INICIO.BitBtn2Click(Sender: TObject);
begin
  pessoas.IndexFieldNames := 'nome';
end;

procedure TF_INICIO.BitBtn3Click(Sender: TObject);
begin
  pessoas.IndexFieldNames := 'Endereco';
end;

procedure TF_INICIO.BitBtn4Click(Sender: TObject);
begin
  pessoas.IndexFieldNames := 'CEP';
end;

Quando clico nos botões não acontece nada.

Quando eu abro a tabela pessoas no MySQL, os índices abrem junto ( como no paradox ), ou existe outra forma de abrir os índices ?

Confirmei através do SQL-Front, e os índices existem.

Obrigado,

José Luiz.

Link para o comentário
Compartilhar em outros sites

  • 0

Jhonas, mais uma vez obrigado por seu interesse em ajudar.

O texto realmente esclareceu algumas dúvidas que eu tinha com relação aos índices, e confirmaram o que eu imaginava que ocorria com os índices utilizando a ZQuery.

Desde que o componente Zeus permite a utilização de ZTable, não deveria também utlilizar os índices nesta forma ?

É essa a resposta que eu gostaria.

Quando Clico no Componente ZTable, nas propriedades do Object Inspector aparece a Propriedade IndexFieldNames, mas não adianta colocar o índice, que no DBGrid, os dados não aparecem ordenados.

Desculpe se eu insisto, mas não gosto de trabalhar com comandos SQL. Só vou passar a utilizá-los, se realmente não houver outra opção disponível.

Novamente

Obrigado,

José Luiz.

Link para o comentário
Compartilhar em outros sites

  • 0

José Luiz ... fazendo alguns testes o ZTable deve ser usando assim:

exemplo:

procedure TForm1.Button1Click(Sender: TObject);
begin
   ZTable1.IndexFieldNames := 'CODEXAME';  // campo da tabela
   ZTable1.SortedFields := 'CODEXAME';
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
   ZTable1.IndexFieldNames := 'EXAME';  // campo da tabela
   ZTable1.SortedFields := 'EXAME';
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
   ZTable1.IndexFieldNames := 'SETOR';  // campo da tabela
   ZTable1.SortedFields := 'SETOR';
end;

fazendo dessa maneira os campos são ordenados e indexados, facilitando a pesquisa

abraço

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,2k
    • Posts
      651,9k
×
×
  • Criar Novo...