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 22-10-2020
serhasae serhasae is offline
Miembro
 
Registrado: jun 2004
Ubicación: España
Posts: 117
Poder: 20
serhasae Va por buen camino
consulta con ado, delphi7 y access

Hola realizo una consulta con ado y delphi 7 y al hacer un insert a la tabla y ejecutar execsql a veces me lo hace y otras veces no funciona el metodo, me estoy volviendo loco mañana colocare el codigo, alguna idea?.
Responder Con Cita
  #2  
Antiguo 22-10-2020
marco3k marco3k is offline
Miembro
 
Registrado: feb 2015
Posts: 61
Poder: 10
marco3k Va por buen camino
Si pondrías el código que estas usando sería mejor para entender el problema y que alguien pueda ayudarte.
Responder Con Cita
  #3  
Antiguo 22-10-2020
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.282
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por serhasae Ver Mensaje
...al hacer un insert a la tabla y ejecutar execsql a veces me lo hace y otras veces no funciona el metodo

Para que te hagas una idea, eso es como decir, "voy al coche, le doy a la llave y a veces arranca y a veces no". Pues puede ser que le falte gasolina, la bomba, la batería, el contacto, las escobillas si tiene carburador, las bujías, es starter,....


Lo normal sería tener un control de errores al realizar el INSERT de forma que si hay algun problema sepas qué error te estás dando.
Además del código como te han comentado, detalla el error y con eso tal vez tengamos una idea.
Puede ser que estén añadiendo claves duplicadas, valores incorrectos, problemas con índices únicos, bloqueos,...

NOTA (de buen rollo): Con 108 posts en estos foros, la pregunta tiene tela...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 22-10-2020
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 913
Poder: 23
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Cita:
Empezado por Neftali [Germán.Estévez] Ver Mensaje
...eso es como decir, "voy al coche, le doy a la llave y a veces arranca y a veces no". Pues puede ser que le falte gasolina, la bomba, la batería, el contacto, las escobillas si tiene carburador, las bujías, es starter,....
Otra opción, puede ser que no tiene coche?
Responder Con Cita
  #5  
Antiguo 22-10-2020
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.042
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Otro ejemplo:

Es que no funciona la impresora.
¿Tiene el cable conectado al ordenador?

¿Tiene el cable conectado a la electricidad?

¿Pero está encendida?
¡¡¡ Ya funciona !!!
Responder Con Cita
  #6  
Antiguo 22-10-2020
serhasae serhasae is offline
Miembro
 
Registrado: jun 2004
Ubicación: España
Posts: 117
Poder: 20
serhasae Va por buen camino
Código Delphi [-]
CAsmm.Active:=False;
CAsmm.SQL.Clear;

CAsmm.SQL.Text:='INSERT INTO ASM_MASIVO '+
           'SELECT DISTINCT C.*,C.TNETO AS T_NETO,C.PESO_FAC AS T_PESO_FAC,'+
           'T.PRECIO AS TARIFA FROM COUTIN AS C, TASM AS T '+
           'WHERE T.AGENCIA=:AG AND T.DESTINO=:AS AND '+
           '(C.PESO_FAC>=T.PMIN AND C.PESO_FAC<=T.PMAX) AND '+
           '(C.ESCALADO>=T.EMIN AND C.ESCALADO<=T.EMAX);';


CAsmm.Parameters.ParamByName('AG').Value:='ASMMAS';
CAsmm.Parameters.ParamByName('AS').Value:='NAP';

CAsmm.Prepared:=True;



   if (CAsmm.ExecSQL=0) then
       Begin
  MessageDlg ('Error al Intentar Crear Asm Masivo', mtError,
                  [mbOK], 0);
       sw:=false;
       end;

Se que la consulta esta bien, la tiro directamente desde access y me la devuelve correctamente. Se que el problema es el ExecSql, tambien he probado a cerrar las tablas antes de llamar a esta consulta, me tiene loco proque a veces lo hace correctamente y a veces no, no entiendo el porque.

Tambien he probado a crear la consulta en access que funciona y borrar la tabla y crearla con:

CAsmm.Close;
CAsmm.SQL.Clear;
CAsmm.SQL.Text:='DROP TABLE ASM_MASIVO';
CAsmm.ExecSQL;

CAsmm.Close;
CAsmm.SQL.Clear;
CAsmm.SQL.Text:='SELECT * INTO ASM_MASIVO FROM (SELECT * FROM CASM_MASIVO);';
CAsmm.ExecSQL;


No lo hace tampoco.

Gracias a todos.

Última edición por serhasae fecha: 22-10-2020 a las 23:31:19.
Responder Con Cita
  #7  
Antiguo 22-10-2020
serhasae serhasae is offline
Miembro
 
Registrado: jun 2004
Ubicación: España
Posts: 117
Poder: 20
serhasae Va por buen camino
Cita:
Empezado por Neftali [Germán.Estévez] Ver Mensaje
Para que te hagas una idea, eso es como decir, "voy al coche, le doy a la llave y a veces arranca y a veces no". Pues puede ser que le falte gasolina, la bomba, la batería, el contacto, las escobillas si tiene carburador, las bujías, es starter,....


Lo normal sería tener un control de errores al realizar el INSERT de forma que si hay algun problema sepas qué error te estás dando.
Además del código como te han comentado, detalla el error y con eso tal vez tengamos una idea.
Puede ser que estén añadiendo claves duplicadas, valores incorrectos, problemas con índices únicos, bloqueos,...

NOTA (de buen rollo): Con 108 posts en estos foros, la pregunta tiene tela...
Hago un borrado de la tabla y luego hago un insert no hay claves duplicadas en la clave primaria, compruebo que la tabla este vacia antes de hacer un insert, he probado con delphi7 y delphi 2010 por si fuera cosa del ado, he colocado el codigo es que anoche no podia dormir y por eso tire la consulta sin el codigo. Gracias Catalan, Saludos desde Valencia.
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
InsertRecord con campo autonumerico de access y delphi7 saldanaluis Conexión con bases de datos 3 06-12-2010 04:35:39
Windows Vista + Delphi7 +ms Access ilisoft21 Conexión con bases de datos 2 09-01-2008 17:26:31
TSelectOnRunTime ACCESS VIOLATION DELPHI7 tuxtlagacse API de Windows 1 30-01-2007 11:08:45
Problemas de conexion con Delphi7 y access en Windows Me Chogo Tablas planas 3 26-04-2006 01:24:33
Access ´03 con delphi7. Donde pongo las sentencias. casimaxi Conexión con bases de datos 4 27-07-2005 03:22:30


La franja horaria es GMT +2. Ahora son las 04:54:21.


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