ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Erro: Attempt to execute an unprepared dynamic SQL statment

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
uhtaldoluck
Novato
Novato


Registrado: Sexta-Feira, 9 de Agosto de 2013
Mensagens: 26

MensagemEnviada: Qui Ago 15, 2013 4:24 pm    Assunto: Erro: Attempt to execute an unprepared dynamic SQL statment Responder com Citação

Estou tentando criar um botão que faz um updade, no banco de dados e da esse erro: Attempt to execute an unprepared dynamic SQL statment



Título editado pela moderação:

Original:
Citação:
Alguém sabe que erro é esse ?


Regras:
Citação:
3- Use sempre um título que dê uma idéia do conteúdo da mensagem e que seja o mais objetivo possível. Com isto, você conseguirá atrair um número maior de pessoas interessadas no tema
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
CesarRocha
Mestre
Mestre


Registrado: Segunda-Feira, 30 de Mai de 2011
Mensagens: 794
Localização: São Paulo - SP

MensagemEnviada: Qui Ago 15, 2013 5:24 pm    Assunto: Responder com Citação

Diz o cenário utilizado para facilitar (database, componente de acesso, código usado).

~bye
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
anderbelluno
Colaborador
Colaborador


Registrado: Quarta-Feira, 23 de Novembro de 2011
Mensagens: 1030
Localização: Cianorte-PR

MensagemEnviada: Qui Ago 15, 2013 5:30 pm    Assunto: Responder com Citação

posta o codigo do botao q vc esta dando o update.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
uhtaldoluck
Novato
Novato


Registrado: Sexta-Feira, 9 de Agosto de 2013
Mensagens: 26

MensagemEnviada: Qui Ago 15, 2013 5:51 pm    Assunto: Responder com Citação

begin
QryUpdate.close;
QryUpdate.sql.clear;
QryUpdate.sql.add(' UPDATE COMPROVADO set COMPROVADO = 1 where DC_LAN = 1');
QryUpdate.ExecSQL();
end;
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
anderbelluno
Colaborador
Colaborador


Registrado: Quarta-Feira, 23 de Novembro de 2011
Mensagens: 1030
Localização: Cianorte-PR

MensagemEnviada: Dom Ago 18, 2013 5:27 am    Assunto: Responder com Citação

Ola, me tire uma duvida.

UPDATE COMPROVADO set COMPROVADO = 1 where DC_LAN = 1');

o nome da sua tabela é COMPROVADO ou o campo da tabela é COMPROVADO?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
uhtaldoluck
Novato
Novato


Registrado: Sexta-Feira, 9 de Agosto de 2013
Mensagens: 26

MensagemEnviada: Seg Ago 19, 2013 7:42 am    Assunto: Responder com Citação

Sim um é COMPROVADO o outro é Comprovado
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Oseiasao
Membro Junior
Membro Junior


Registrado: Sexta-Feira, 14 de Outubro de 2011
Mensagens: 303

MensagemEnviada: Seg Ago 19, 2013 9:02 am    Assunto: Responder com Citação

Qual o banco vc ta usando e qual o componente ?

tira os parenteses do execsql tbeim amigo, não precisa dele.
_________________
Melhor é o fim das coisas do que o principio delas .... (Salomão)
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
uhtaldoluck
Novato
Novato


Registrado: Sexta-Feira, 9 de Agosto de 2013
Mensagens: 26

MensagemEnviada: Seg Ago 19, 2013 9:11 am    Assunto: Responder com Citação

Estou usando o Firebird Maestro 12.10 e também tenho o firebird 2.5 o componente é o TIBQuery
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Oseiasao
Membro Junior
Membro Junior


Registrado: Sexta-Feira, 14 de Outubro de 2011
Mensagens: 303

MensagemEnviada: Seg Ago 19, 2013 9:21 am    Assunto: Responder com Citação

Voce tentou executar esse update direto no banco pra testar ?
_________________
Melhor é o fim das coisas do que o principio delas .... (Salomão)
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
uhtaldoluck
Novato
Novato


Registrado: Sexta-Feira, 9 de Agosto de 2013
Mensagens: 26

MensagemEnviada: Seg Ago 19, 2013 9:29 am    Assunto: Responder com Citação

Não, mas essa opção vai ter que ficar no programa para que o cliente faça a atualização
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Oseiasao
Membro Junior
Membro Junior


Registrado: Sexta-Feira, 14 de Outubro de 2011
Mensagens: 303

MensagemEnviada: Seg Ago 19, 2013 9:32 am    Assunto: Responder com Citação

uhummm .. entendo que tem q ser no sistema, mas precisamos testar no banco pra ver se ele executa, porque se direto no banco não executar significa que não temos erro com o codigo no delphi, e sim um erro com o banco, ai vamos tratar o erro pelo banco
_________________
Melhor é o fim das coisas do que o principio delas .... (Salomão)
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
uhtaldoluck
Novato
Novato


Registrado: Sexta-Feira, 9 de Agosto de 2013
Mensagens: 26

MensagemEnviada: Seg Ago 19, 2013 9:39 am    Assunto: Responder com Citação

Hm e como eu faria isso ?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Oseiasao
Membro Junior
Membro Junior


Registrado: Sexta-Feira, 14 de Outubro de 2011
Mensagens: 303

MensagemEnviada: Seg Ago 19, 2013 9:43 am    Assunto: Responder com Citação

executa só isso no banco

UPDATE COMPROVADO set COMPROVADO = 1 where DC_LAN = 1
_________________
Melhor é o fim das coisas do que o principio delas .... (Salomão)
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
Netrunner
Aprendiz
Aprendiz


Registrado: Domingo, 7 de Julho de 2013
Mensagens: 236

MensagemEnviada: Seg Ago 19, 2013 9:56 am    Assunto: Responder com Citação

QryUpdate.close;
QryUpdate.sql.clear;
QryUpdate.open; //acho que vocé esqueceu de dar o open depois do close
QryUpdate.sql.add(' UPDATE COMPROVADO set COMPROVADO = 1 where DC_LAN = 1');
QryUpdate.ExecSQL();
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Oseiasao
Membro Junior
Membro Junior


Registrado: Sexta-Feira, 14 de Outubro de 2011
Mensagens: 303

MensagemEnviada: Seg Ago 19, 2013 10:07 am    Assunto: Responder com Citação

não pode abrir antes de inserir os comandos sql ...

o open e ideal apenas para pesquisar, para atualizações usamos o execsql, pode-se usar o open tbeim para update e insert, porém, não e tão recomendável porque so irá atualizar o banco de dados quando ocorrer um commit no banco de dados, já com o execsql, a atualização no banco de dados é instantanea, sendo assim, se voce inserir esse open logo após limpar o banco vai dar erro amigo, porque ainda não tem comandos a serem executados.

o que voce pode fazer é trocar o execsql pelo open e ver se executa, caso sim, voce precisará criar algum artifício para atualizar o banco cara, seria mais ou menos assim, voce insere os comandos como está, logo abaixo voce fechado o banco de dados e abriria novamente aí sim, os comandos seriam salvos no banco.

EX: Voce cadastrou 10 clientes no banco usando open, ai o sistema travou, ou o micro do cliente desligou antes de voce fechar o sistema, quando voce for procurar as informações elas não estarão no banco porque o mesmo não foi fechado.
_________________
Melhor é o fim das coisas do que o principio delas .... (Salomão)
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB