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 

Alterar valores dos campos...

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Banco de Dados
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
RODRIGOSOUZArios
Novato
Novato


Registrado: Sábado, 16 de Julho de 2005
Mensagens: 84
Localização: varginha

MensagemEnviada: Ter Fev 13, 2007 10:15 am    Assunto: Alterar valores dos campos... Responder com Citação

Pessoal é o seguinte, eu preciso implementar uma rotina na qual busque todos os registros de uma tabela a altere o valor de um campo...
onde estou utilizando, um sqlconnection,uma query, um datasetprovider, um clientdataset.
Estou tentando com o código abaixo, porém me retorna um erro em "Update affected more than 1 record".

begin
ClientDataSet1.First;
WHILE NOT CLIENTDATASET1.Eof DO
BEGIN
CLIENTDATASET1.Edit;
ClientDataSet1PRECO_VISTA.AsCurrency:=999;
clientdataset1.Post;
CLIENTDATASET1.NEXt;
end;
clientdataset1.ApplyUpdates(0);

END;


Alguem ae poderia me ajudar???
valew
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
thomazs
Moderador
Moderador


Registrado: Segunda-Feira, 1 de Março de 2004
Mensagens: 2835

MensagemEnviada: Ter Fev 13, 2007 3:09 pm    Assunto: Responder com Citação

No provider, altere a opção poAllowMultiRecordUpdates para true... pode ser que resolva, ou então, mostre como está o seu select, e a estrutura dos campos (UpdateFlags) dos campos.
_________________
Suporte e Consultoria em Desenvolvimento de Sistemas
Bacharel em Sistemas de Informação
Especialista em Bancos de Dados
Desenvolvimento: Clipper, Delphi, PHP, Python/Django
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
RODRIGOSOUZArios
Novato
Novato


Registrado: Sábado, 16 de Julho de 2005
Mensagens: 84
Localização: varginha

MensagemEnviada: Ter Fev 13, 2007 3:40 pm    Assunto: Responder com Citação

Tentei alterar a propriedade do Provider para poAllowMultiRecordUpdate, mas me retornou um erro. "Record not found or changed by another user.", não sei o q pode estar acontecendo...

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
with SQLQuery1 do
begin
close;
sql.clear;
sql.Add('SELECT * FROM PRODUTOSGRADE WHERE CODIGO_PRODUTO = :CODIGO');
ParamByName('CODIGO').ASINTEGER:=STRTOINT(EDIT1.TEXT);
OPEN;
END;
clientdataset1.Open;
END; //esse codigo apenas abre a query e o clientdataset com os respectivos registros solicitados.

procedure TForm1.BitBtn2Click(Sender: TObject);
begin
clientdataset1.First;
while not clientdataset1.Eof do
begin
CLIENTDATASET1.Edit;
ClientDataSet1PRECO_VISTA.AsInteger:=12;
CLIENTDATASET1.POST;
ClientDataSet1.Next;
END;
clientdataset1.ApplyUpdates(0);
end;//esse codigo faz o laço de repeticao e a alteração dos registros...

Se puder me ajudar... agora os flags do provider eu nao sei mto bem o q é isso...rsss...

Obrigado!
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 -> Banco de Dados 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