Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-09-2003
miguelb miguelb is offline
Miembro
 
Registrado: may 2003
Ubicación: Entre Rios - Argentina
Posts: 69
Poder: 22
miguelb Va por buen camino
Question Eliminar algunos registros con sql

Hola:
necesito eliminar los registros de una tabla que cumplan con
una determinada condicion.
Para ello inclui en el form un Tquery, el Query1
y cuando presiono un boton ejecuto
APLICO_SQL('delete from as_asoc.db where codi_as = "005";');
y
PROCEDURE APLICO_SQL(UNSQL:STRING);
var
SQL_Tstrings :Tstrings;
begin
SQL_Tstrings := TStringList.Create;
SQL_Tstrings.Clear;
SQL_Tstrings.add(unSql);
QUERY1.active:=false;
QUERY1.sql:=SQL_Tstrings;
QUERY1.Active:=true;
end;
El problema es que no borra los registros y da el siguiente error:
Error : Error Creating Cursor Handle
La tabla existe,
el campo es de tipo string,
creo que esta todo normal.
Pero no funciona,


alguna idea?
desde ya gracias
Miguel
Responder Con Cita
  #2  
Antiguo 19-09-2003
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
QUERY1.ExecSql;

Para los conjuntos que no devuelven datos.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 19-09-2003
miguelb miguelb is offline
Miembro
 
Registrado: may 2003
Ubicación: Entre Rios - Argentina
Posts: 69
Poder: 22
miguelb Va por buen camino
Marcos:
disculpame, pero no entiendo que es lo que me queres decir.
Debo utilizar el QUERY1.ExecSql? en vez de activar, y desactivar?
Para los conjuntos que no devuelven datos.
que me queres decir con esto?
Disculpa y gracias
Miguel
Responder Con Cita
  #4  
Antiguo 19-09-2003
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Cuando utilizas Query.Active:=True o Query.Open, le estas diciendo que lo que cargaste en la propiedad Sql es una consulta de selección, que retorna datos. Y lo que tu quieres es que Elimine/Inserte/Modifique datos, para eso debes utilizar ExecSql!

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #5  
Antiguo 19-09-2003
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Si eso mismo, una consulta de selección se activa con Active:=True;

Pero las consultas de acción, es decir que no devuelven datos, sino que ejecutan acciones sobre la tab la, añadir registros, eliminar como es tu caso, actualizar....

Deben de activarse por medio de la instrucción que te menciono.

ExecSql.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 09:20:01.


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
Copyright 1996-2007 Club Delphi