Delphi - Table is read only

 
Vista:

Table is read only

Publicado por david (20 intervenciones) el 03/05/2007 17:46:33
el codigo que utilizo es el siguiente:

query1.close;
query1.sql.clear;
query1.sql.Add ('update proveedores set provincia='+QuotedStr(provincia.Text));
query1.ExecSQL;
query1.open ;

me sale el mensaje de "Table is read only", pero luego voi y miro el registro de la tabla y si que me actualiza el campo

alquien sabe que debo hacer para que no salga el mensaje? que hago mal?

porcierto el requestlive del query está en true y el readonly de la tabla a false

tambien he de decir que inserto nuevos registro e insertar si que me deja, mediante la tabla y no por un query

saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 65
Oro
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

RE:Table is read only

Publicado por E.T. (1244 intervenciones) el 03/05/2007 17:55:50
para que no se te muestre el error debes de poner en edición tu tabla antes de ejecutar el query; puede ser algo así:

te posicionas en el registro a modificar y haces lo siguiente, en caso de ser un registro nuevo usas en lugar de "edit" el "Append" o el "insert"

tablaProveedores.edit; //luego tu codigo

NOTA:como yo casi no uso sql, podrias poner la tabla en edición desde el mismo query antes de hacer el cambio, pero no se como

query1.close;
query1.sql.clear;
query1.sql.Add ('update proveedores set provincia='+QuotedStr(provincia.Text));
query1.ExecSQL;
query1.open ;

talves eso resuelva tu problema
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Table is read only

Publicado por david (20 intervenciones) el 03/05/2007 18:34:55
y tu como lo harías sin sql? cual sería el codigo para modificar un registro?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 65
Oro
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

RE:Table is read only

Publicado por E.T. (1244 intervenciones) el 03/05/2007 18:46:22
Ok, Te posicionas en el registro deseado, con un locate o con un filtro.

Luego pones

tabla.edit;
tabla.fieldvalues[ 'nombre del campo' ]:=valor deseado;
.
.
tabla.fieldvalues[ 'nombre del campo n' ]:=valor;
tabla.post;

Algo así sería
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Table is read only

Publicado por jose luis (157 intervenciones) el 03/05/2007 18:44:22
Prueba quitandole el Query1.open, porque con los insert, update y delete no es necesario, basta con usar Query1.ExecSQL
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Table is read only

Publicado por david (20 intervenciones) el 03/05/2007 18:46:38
ese era el error, tenia que quitar el query1.open

muchisimas gracias!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar