Command Text change are not allowed é porque o seu datasetprovider que está
ligado ao seu clientdataset não está com a opção poAllowComandText = True. O
ClientDataSet não possui um engine próprio de pesquisa, por isso necessita
de um dataset que faça esta função. Por isso você encontra

SqlConnection (Ou componente qualquer de conexão)
|
SqlDataset(Ligado no sql connection)
|
DataSetProvider(Recebe o dataset)
|
ClientDataSet(Recebe o provider)

Existem "N" modos de se fazer consultas via delphi embora eu não utilize o
commandtext do clientdataset, o funcionamento é este descrito.

Espero poder ter te ajudado.

Abraços,
Daniel.


2009/2/3 Mario Rodrigues <marioirodrig...@gmail.com>

>   Andrei,
>
> deu o seguinte erro:
> Command text change are not allowed
> Diz q o comando nao é permitido...tirei o edit e alterei de post para
> execute...
>
> Bom dai o q eu fiz...ao inves de usar o client data set usei o TSQLQuery...
> Dai funcionou...
> valeu pela ajuda e paciencia Andrei
>
>
> 2009/2/3 Andrei Luís 
> <compuvale.softw...@gmail.com<compuvale.software%40gmail.com>
> >
>
> > Mario,
> >
> > Não, tem coisa errada no seu código. Edit e Post estão sobrando. Tire o
> > Edit, e troque o Post por Execute que deve funcionar.
> >
> > O Edit é pra você colocar o cds em modo de edição, mas não é o caso. O
> que
> > você quer fazer é executar um comando sql.
> >
> >
> > []
> > Andrei
> >
> > 2009/2/3 Mario Rodrigues 
> > <marioirodrig...@gmail.com<marioirodrigues%40gmail.com>
> <marioirodrigues%40gmail.com>
> > >
> >
> > > Andrei,
> > >
> > > Pooow besteira nao acho q foi nao...pelo menos ja me deu uma luz...fiz
> > > assim:
> > >
> > > DataModule2.cds.Edit; //Coloquei isso pq estava dando erro de q nao
> > estava
> > > em modo de edit ou insert..pode ser??
> > > DataModule2.cds.CommandText := 'update tblCadastrado Set nome
> > > ='+QuotedStr('MARIO TESTE')
> > > + ' Where nome = '+QuotedStr('MARIO');
> > > DataModule2.cds.Post;
> > > DataModule2.cds.ApplyUpdates(-1);
> > > DataModule2.cds.Refresh;
> > >
> > > Compila...sem erros..porem nao altera nada...algum motivo?...
> > > De pouco em pouco a gente chega la hehehe
> > >
> > > 2009/2/3 Andrei Luís 
> > > <compuvale.softw...@gmail.com<compuvale.software%40gmail.com>
> <compuvale.software%40gmail.com>
>
> > >
> > >
> > > > Mário,
> > > >
> > > > Basicamente você vai ter que colocar a mesma sql pra rodar.
> > > >
> > > > Não utilizo dbExpress, vou te mostrar como eu faço no IBO:
> > > >
> > > > Utilizando parâmetros: (fica mais organizado e limpo)
> > > >
> > > > qrTMP.SQL.Text := 'update tblCadastrado Set nome = :wnomeNovo Where
> > nome=
> > > > :wnomeAntigo';
> > > > qrTMP.ParamByName('wnomeNovo').asString := 'MARIO TESTE';
> > > > qrTMP.ParamByName('wnomeAntigo').asString := 'MARIO';
> > > > qrTMP.Execute;
> > > > qrTmp.ib_transaction.commitRetaining;
> > > >
> > > > Sem utilizar parâmetros:
> > > >
> > > > qrTMP.SQL.Text := 'update tblCadastrado Set nome ='+QuotedStr('MARIO
> > > > TESTE')
> > > > + ' Where nome = '+QuotedStr('MARIO');
> > > > qrTMP.Execute;
> > > > qrTmp.ib_transaction.commitRetaining;
> > > >
> > > > Creio que você possa jogar isso num TSQLQuery ou num TClientDataSet
> > > > (desculpe se falei besteira, mas é que realmente não manjo nada de
> > > > dbExpress).
> > > >
> > > >
> > > > []
> > > > Andrei
> > > >
> > > > 2009/2/3 Mario Rodrigues 
> > > > <marioirodrig...@gmail.com<marioirodrigues%40gmail.com>
> <marioirodrigues%40gmail.com>
> > <marioirodrigues%
> > > 40gmail.com>
> > > > >
> > > >
> > > > > Andrei,
> > > > >
> > > > > Valeu...eu ja tinha visto em outro email q acho q foi o sr mesmo q
> > > > > enviou...
> > > > > procurei..mas nao consegui achar nada q fale disso...
> > > > >
> > > > > caso alguem ai possa me ajudar...
> > > > > vlw
> > > > >
> > > > > 2009/2/3 Andrei Luís 
> > > > > <compuvale.softw...@gmail.com<compuvale.software%40gmail.com>
> <compuvale.software%40gmail.com>
> > <compuvale.software%
> > > 40gmail.com>
> >
> > > > >
> > > > >
> > > > > > Olá Mário,
> > > > > >
> > > > > > Veja se esse material te ajuda:
> > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> http://www.4shared.com/file/72527475/4358aabb/curso_professor_pedro_souza.html
> > > > > >
> > > > > > São vídeo aulas de Delphi + Firebird + dbExpress, estão
> compactadas
> > > com
> > > > o
> > > > > > 7Zip.
> > > > > >
> > > > > > []
> > > > > > Andrei
> > > > > >
> > > > > > 2009/2/3 Mario Rodrigues 
> > > > > > <marioirodrig...@gmail.com<marioirodrigues%40gmail.com>
> <marioirodrigues%40gmail.com>
> > <marioirodrigues%
> > > 40gmail.com>
> > > > <marioirodrigues%
> > > > > 40gmail.com>
> > > > > > >
> > > > > >
> > > > > >
> > > > > > > Salve a todos,
> > > > > > >
> > > > > > > Uso FB 2.1
> > > > > > > Delphi 7 + dbExpress
> > > > > > >
> > > > > > > Bom o q eu queria fazer é o seguinte...ao clicar no botao fazer
> > > > > alteração
> > > > > > > na
> > > > > > > base...
> > > > > > >
> > > > > > > Por exemplo:
> > > > > > >
> > > > > > > num update seria
> > > > > > >
> > > > > > > update tblCadastrado Set nome = 'MARIO TESTE'
> > > > > > > Where nome 'MARIO'
> > > > > > >
> > > > > > > so isso...
> > > > > > >
> > > > > > > pelo banco so isso resolveria...mas como estou aprendendo como
> > > > poderia
> > > > > > > fazer
> > > > > > > isso via delphi...
> > > > > > > num to pedindo o peixe pescado...se alguem ai tiver um
> > > > > *material/site/Ex
> > > > > > de
> > > > > > > codig*o agradeceria...
> > > > > > >
> > > > > > > flwww
> > >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
Abraços,

Daniel.

"Sempre que a vida lhe apresentar um desafio, tenha certeza que junto dele
está a solução",


[As partes desta mensagem que não continham texto foram removidas]

Responder a