Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   como modificar si los ds son de solo lectura (https://www.clubdelphi.com/foros/showthread.php?t=20051)

kryna 04-04-2005 21:29:46

como modificar si los ds son de solo lectura
 
hola
Necesito modificar algun campo de los registros de las tablas pero
antes necesito buscar dicho registro y mostrarlo.. para asi poder
escribir en el dbedit correspondiente el nuevo valor...
El principal problema que tengo es que luego que realizo una
busqueda..

no puedo modificar los datos que estan en los dbedit entonces no
puedo probar ninguno de las entencias que tengo..
¿ como tengo que hacer para desbloquear los dbedit ? tengo la
propiedad resquestlive en true..

estoy usando como gestor paradox, la busqueda que realizo por sql es

SELECT especialidad.Cod_especialidad,
especialidad.Descripcion_especialidad, especialidad.Orden,
especialidad.Nota, concepto.Cod_especialidad, concepto.Cod_concepto,
concepto.Descripcion_concepto, costos.Cod_concepto, costos.Fecha,
costos.Costo
FROM especialidad, concepto, costos
WHERE (especialidad.Cod_especialidad =
concepto.Cod_especialidad)
AND (concepto.Cod_concepto = costos.Cod_concepto)
AND concepto.Cod_concepto = :Codigo

y el codigo en delphi es

if editorcodigo <> nil then

qrycodigo.Close;
qrycodigo.ParamByName('Codigo').AsInteger := StrToInt
(editorcodigo.text);
Dsconcepto.dataset := qrycodigo;
qrycodigo.Open;


qrycostos.Close;
qrycostos.ParamByName('Codigo').AsInteger := StrToInt
(editorcodigo.text);
Dscostos.dataset := qrycostos;
qrycostos.Open;


qryespecialidad.Close;
qryespecialidad.ParamByName('Codigo').AsInteger := StrToInt
(editorcodigo.text);
Dsespecialidad.dataset := qryespecialidad;
qryespecialidad.Open;


if qrycodigo.EOF then
ShowMessage('No encontré ningún Registro!');

de verdad no se que hacer..

saludos

marcoszorrilla 04-04-2005 21:33:49

Cita:

After activating the TQuery, inspect the CanModify property to determine whether the request for a live result set was successful.

Note: All multi-table queries return read-only result sets. Other conditions may cause a query to return a read-only result set. For local tables (such as dBASE and Paradox), see the local SQL help file for rules governing live result sets (updatable queries). For other table types (such as InterBase, Oracle, and Sybase), consult the documentation for the specific database system.
Me temo que tendrás que utilizar el componente TUpdateSql, para lo que deseas.

Un Saludo.

kryna 04-04-2005 21:58:27

pero no se como hacerlo..

me dan unos ejemplos.... para saber que debo colocar en codigo delphi y loque debo colocar en el modifySQL..

otra pregunta de usar UpdateSQL solo usaria un query y ahi podria colocar la inclusin, modificacion y eliminacion???

jachguate 04-04-2005 22:23:07

El libro "La cara oculta de delphi 4" de Ian Marteens tiene (según recuerdo) una sección dedicada a los cached updates, cuya lectura es mas que recomendable.

El libro está disponible para descarga totalmente gratis en la web del autor.

Hasta luego.

;)


La franja horaria es GMT +2. Ahora son las 05:57:30.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi