Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
ftpadua Novato

Registrado: Terça-Feira, 17 de Agosto de 2004 Mensagens: 32
|
Enviada: Qua Ago 08, 2007 8:49 am Assunto: SQL com DBF esta com um erro... |
|
|
Bom dia
Estou com um problema aqui no meu sistema, veja o codigo:
Código: |
query1.Close;
query1.SQL.Clear;
query1.SQL.Add('update CDFL07 set PRODUCAO = :Valor');
query1.ParamByName('Valor').AsFloat := StrToFloat(Edit6.Text);
Query1.SQL.Add('where Trim(Matricula) = :Pesquisa');
query1.ParamByName('pesquisa').asString:= Edit1.Text;
query1.ExecSQL;
Query1.Open;
Query1.Close;
|
Quando executado, ele altera a tabela, mas gera uma mensagem de erro "Erro ao criar handre do cursor".
Alguem sabe o q pode ser?
Obrigado
Fernando |
|
Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Qua Ago 08, 2007 9:06 am Assunto: Re: SQL com DBF esta com um erro... |
|
|
ftpadua escreveu: | Bom dia
Estou com um problema aqui no meu sistema, veja o codigo:
Código: |
query1.Close;
query1.SQL.Clear;
query1.SQL.Add('update CDFL07 set PRODUCAO = :Valor');
Query1.SQL.Add('where Trim(Matricula) = :Pesquisa');
query1.ParamByName('pesquisa').asString:= Edit1.Text;
query1.ParamByName('Valor').AsFloat := StrToFloat(Edit6.Text);
query1.ExecSQL;
Query1.Open;
Query1.Close;
|
Quando executado, ele altera a tabela, mas gera uma mensagem de erro "Erro ao criar handre do cursor".
Alguem sabe o q pode ser?
Obrigado
Fernando |
Existe algumas redundâncias no teu codigo.
Bom acho que o correto eh assim
Código: | query1.Close;
query1.SQL.Clear;
query1.SQL.Add('update CDFL07.DBF set Matricula :Pesquisa and PRODUCAO = :Valor');
Query1.SQL.Add('where Trim(Matricula) = :Pesquisa');
query1.ParamByName('pesquisa').asString:= Edit1.Text;
query1.ParamByName('Valor').AsFloat := StrToFloat(Edit6.Text);
query1.ExecSQL; |
Bom nao testei aqui, faça os testes ai. _________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
Voltar ao Topo |
|
 |
ftpadua Novato

Registrado: Terça-Feira, 17 de Agosto de 2004 Mensagens: 32
|
Enviada: Qua Ago 08, 2007 5:04 pm Assunto: |
|
|
naum deu certo naum, alguem tem mais alguma ideia o q pode ser? |
|
Voltar ao Topo |
|
 |
gilsonnrodrigues Moderador

Registrado: Quinta-Feira, 14 de Abril de 2005 Mensagens: 9009 Localização: Governador Valadares-MG
|
Enviada: Qua Ago 08, 2007 5:57 pm Assunto: |
|
|
pra q serve esse Código: | Query1.Open;
Query1.Close; | ? |
|
Voltar ao Topo |
|
 |
marciobatista Profissional

Registrado: Terça-Feira, 25 de Mai de 2004 Mensagens: 578
|
Enviada: Qua Ago 08, 2007 6:30 pm Assunto: |
|
|
base de dados dbf nao suportao esses comandos. qulaquer duvida posta ai |
|
Voltar ao Topo |
|
 |
danilozanaga Aprendiz

Registrado: Quarta-Feira, 15 de Junho de 2005 Mensagens: 156
|
Enviada: Qua Ago 08, 2007 6:34 pm Assunto: |
|
|
Ao invés de usar o parâmetro porque você não coloca direto os valores, já que a query é montada dinamicamente? |
|
Voltar ao Topo |
|
 |
gilsonnrodrigues Moderador

Registrado: Quinta-Feira, 14 de Abril de 2005 Mensagens: 9009 Localização: Governador Valadares-MG
|
Enviada: Qua Ago 08, 2007 6:49 pm Assunto: |
|
|
danilozanaga escreveu: | Ao invés de usar o parâmetro porque você não coloca direto os valores, já que a query é montada dinamicamente? |
pede ele pra tirar o query.open e o query.close só pra vcer o q acontece!! |
|
Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
|
Voltar ao Topo |
|
 |
gilsonnrodrigues Moderador

Registrado: Quinta-Feira, 14 de Abril de 2005 Mensagens: 9009 Localização: Governador Valadares-MG
|
Enviada: Qui Ago 09, 2007 10:25 am Assunto: |
|
|
mas o erro ta dando no open! |
|
Voltar ao Topo |
|
 |
marciobatista Profissional

Registrado: Terça-Feira, 25 de Mai de 2004 Mensagens: 578
|
Enviada: Qui Ago 09, 2007 12:12 pm Assunto: |
|
|
como eu ja disse ta dando erro porque base de dados DBF (dbase III) nao supota comando sql |
|
Voltar ao Topo |
|
 |
gilsonnrodrigues Moderador

Registrado: Quinta-Feira, 14 de Abril de 2005 Mensagens: 9009 Localização: Governador Valadares-MG
|
Enviada: Qui Ago 09, 2007 12:14 pm Assunto: |
|
|
marciobatista escreveu: | como eu ja disse ta dando erro porque base de dados DBF (dbase III) nao supota comando sql |
Experiente!!
quem te disse isso? |
|
Voltar ao Topo |
|
 |
AlexSousa Colaborador


Registrado: Sexta-Feira, 12 de Novembro de 2004 Mensagens: 1879 Localização: São luís - MA
|
Enviada: Qui Ago 09, 2007 1:30 pm Assunto: |
|
|
blz ftpadua,
post o erro q esta dando com o comando q o Adriano te passou..blz
abraços, |
|
Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
|
Voltar ao Topo |
|
 |
marciobatista Profissional

Registrado: Terça-Feira, 25 de Mai de 2004 Mensagens: 578
|
Enviada: Qui Ago 09, 2007 6:36 pm Assunto: |
|
|
entao foi mal minha. desculpa ae. achei q nao dava |
|
Voltar ao Topo |
|
 |
Darvane Membro Junior

Registrado: Domingo, 1 de Junho de 2003 Mensagens: 350
|
Enviada: Qui Ago 09, 2007 9:13 pm Assunto: |
|
|
É que vc tá fechando a tabela e executando ExecSql
Tente somente o código abaixo:
query1.SQL.Clear;
query1.SQL.Add('update CDFL07.DBF set Matricula :Pesquisa and PRODUCAO = :Valor');
Query1.SQL.Add('where Trim(Matricula) = :Pesquisa');
query1.ParamByName('pesquisa').asString:= Edit1.Text;
query1.ParamByName('Valor').AsFloat := StrToFloat(Edit6.Text);
query1.ExecSQL;
===
Flw
Inteh! |
|
Voltar ao Topo |
|
 |
|