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

(Resolvido) params delphi


Guest --Milton --

Pergunta

Guest --Milton --

Ola pessoal não estou conseguindo criar parametros dentro da propriedade 'params' de uma query

os botoes estao desativados se alquem puder me ajudar.

Agradeco a todos.

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0
Guest gallyleus
Olá! Quais componentes você está usando? Cada componente tem seu modo de trabalhar. Detalhe um pouco mais sua pergunta. Abraço!

Estou usando 1 dbgrid onde receberao os dados um edt que tera o pramentro datasource e tquery e as tabelas são paradox

Solo isso.

o que quero e digitar o valor no edit e que apareca no dbgrid dai depois voltar sequenci no sitema que estou criando.

Obrigado pela ajuda

Link para o comentário
Compartilhar em outros sites

  • 0
Guest --Rodrigo --
Na propriedade SQL escreve p.e.:

SELECT *

FROM CLIENTES

WHERE CLIENTESID = :ClienteW

observe a variável ClienteW é precedida por : (dois pontos) e sem espaço.

clique em Parameters e observe...

Ola amigo obrigado pela ajuda mas não consegui descobrir onde esta errado segue ai o codigo que estou colocando no evente onclick de um botao normal.

qclientes.close;

Qclientes.sql.Clear;

qclientes.ParamByName (nome):=ed.text;

Qclientes.SQL.Add('select * from clientes where nome = :nome ');

qclientes.Open;

quando mando compilar da o segui erro

[Error] slq.pas(35): Undeclared identifier: 'nome'

[Error] slq.pas(35): Incompatible types: 'TParam' and 'TCaption'

Desde já obrigado a todos que puderem me ajudar

Link para o comentário
Compartilhar em outros sites

  • 0

Mude essa linha:

qclientes.ParamByName (nome):=ed.text;
Para:
qclientes.ParamByName ('nome').Value := ed.text;

Lembre-se que para usar "ParamByName", você já deve ter seu código SQL montado na propriedade "SQL" da query. E com o parâmetro devidamente informado dentro desse código, assim o Delphi o cria automaticamente.

Link para o comentário
Compartilhar em outros sites

  • 0

plpamorim, é isto mesmo.

Mas, vamos deixar mais claro ao colega Milton que o parâmetro só existe depois de sua declaração. Logo, os parâmetros devem ser inicializados antes da chamada ao método Open, que é o momento em que toda a consulta SQL já está construida e o componente já saberá que parâmetros foram declarados.

Quanto a inicialização do parâmetro, costumo recomendar que seja usado o método que indica o tipo esperado de informação (pelo menos, quando o componente o permite). É um hábito que pode evitar dores de cabeça em algumas situações. Para o caso acima, onde é esperado que a informação seja um string, o código passaria de:

qclientes.ParamByName ('nome').Value := ed.text;

para

qclientes.ParamByName ('nome').AsString := ed.text;

se fosse data:

qclientes.ParamByName ('data').AsDate := StrToDate(ed.text); (ou AsDateTime)

Abraços

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...