Error Banco de Dados Urgentíssimo
Caros Amigos
Se puderem me ajudar, estou desesperado, por que preciso disto urgente..
Eu trabalho com uma query, dou um select em uma determinada tabela, e quando vou inserir eu faço da seguinte maneira
Query.Insert no evento Click do botão Novo
mas quando faço isso ele retorna o seguinte erro
Query: Cannot modify a read-only dataset
Não entendo o pq?
Sendo que o Request Live está TRUE
Se puderem me ajudar
Agradeço antecipadamente.
Cabelo.
Se puderem me ajudar, estou desesperado, por que preciso disto urgente..
Eu trabalho com uma query, dou um select em uma determinada tabela, e quando vou inserir eu faço da seguinte maneira
Query.Insert no evento Click do botão Novo
mas quando faço isso ele retorna o seguinte erro
Query: Cannot modify a read-only dataset
Não entendo o pq?
Sendo que o Request Live está TRUE
Se puderem me ajudar
Agradeço antecipadamente.
Cabelo.
Cabelo
Curtidas 0
Respostas
Carnette
26/06/2003
Voce poderia colocar a frase SQL que tem dentro desta Query ??
GOSTEI 0
Midas
26/06/2003
no final vc dá um open ?
se é isso não esta correto pois quando se pede para inserir se diz respeito a outra classe ai vc deve em vez de open deve execsql
assim dever
close;
informações ...
execsql;
se é isso não esta correto pois quando se pede para inserir se diz respeito a outra classe ai vc deve em vez de open deve execsql
assim dever
close;
informações ...
execsql;
GOSTEI 0
Cabelo
26/06/2003
Sim
faço
Query.close;
Query.SQL.add(´select´);
Query.ExecSql;
A query retorna os registros selecionados do banco
Mas quando eu dou um insert ele dá erro
Eu só não entendo o pq. pois faço isso no meu projeto inteiro, e só neste form estou tendo problemas
obrigado pela colaboração, mas se puder me ajudar eu agradeço
Cabelo
faço
Query.close;
Query.SQL.add(´select´);
Query.ExecSql;
A query retorna os registros selecionados do banco
Mas quando eu dou um insert ele dá erro
Eu só não entendo o pq. pois faço isso no meu projeto inteiro, e só neste form estou tendo problemas
obrigado pela colaboração, mas se puder me ajudar eu agradeço
Cabelo
GOSTEI 0
Midas
26/06/2003
mas qual sua intenção se for dar um select vc tem que usar o open mesmo agora se for um update já seria o execsql
GOSTEI 0
Cabelo
26/06/2003
Não me expliquei direito, eu utilizo da seguinte maneira
Quando eu vou consultar somente faço a seguinte instrução
Query.Close;
Query.SQL.Add(´select .......´);
Query.Open;
para inserir, alterar ou Excluir
Utilizo a instrução
Query.SQL.add(´insert into ....´);
Query.ExecSql;
Não sei se consegui explicar, mas o problema é que no meu sistema inteiro isto funciona muito bem desta forma, só nesta Unit é que da pau e eu não faço idéia do por quê...
Obrigado
Cabelo.
Quando eu vou consultar somente faço a seguinte instrução
Query.Close;
Query.SQL.Add(´select .......´);
Query.Open;
para inserir, alterar ou Excluir
Utilizo a instrução
Query.SQL.add(´insert into ....´);
Query.ExecSql;
Não sei se consegui explicar, mas o problema é que no meu sistema inteiro isto funciona muito bem desta forma, só nesta Unit é que da pau e eu não faço idéia do por quê...
Obrigado
Cabelo.
GOSTEI 0
Midas
26/06/2003
Não entendi o porque vc precisa de um select antes de dar um into...
faça o comando update setando os campos que pretende inserir ... não seria a saida ... mais rápida com menos codigo ?
faça o comando update setando os campos que pretende inserir ... não seria a saida ... mais rápida com menos codigo ?
GOSTEI 0
Cabelo
26/06/2003
O problema não está em quando eu vou enviar a instrução para o banco de dados, está quando eu mudo o state da query
assim
Query.Insert;
Neste momento o delphi da o erro
Cannot modify a read-only dataset
assim
Query.Insert;
Neste momento o delphi da o erro
Cannot modify a read-only dataset
GOSTEI 0
Cabelo
26/06/2003
Será que alguém pode me ajudar??
GOSTEI 0
Rodrigo Lima
26/06/2003
Cara, voce utiliza a clausula ORDER BY?
As vezes dá uma louca na Query e ela nao aceita edicao por causa disso. Se voce utilizar e precisar muito do ORDER BY, tente o seguinte:
1) Retire a linha correspondente a ORDER BY
2) Crie um indice para a sua tabela com o order, porque se existir um indice daquilo que voce procura, a Query utiliza ele.
Exemplo:
SELECT * FROM Tabela_Vendedor
WHERE CODIGO > 100
Se existir um indice da tabela de vendedores por CODIGO a query o utilizara e voce nao precisara utilizar um ORDER BY
As vezes dá uma louca na Query e ela nao aceita edicao por causa disso. Se voce utilizar e precisar muito do ORDER BY, tente o seguinte:
1) Retire a linha correspondente a ORDER BY
2) Crie um indice para a sua tabela com o order, porque se existir um indice daquilo que voce procura, a Query utiliza ele.
Exemplo:
SELECT * FROM Tabela_Vendedor
WHERE CODIGO > 100
Se existir um indice da tabela de vendedores por CODIGO a query o utilizara e voce nao precisara utilizar um ORDER BY
GOSTEI 0