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 07-07-2003
miguelb miguelb is offline
Miembro
 
Registrado: may 2003
Ubicación: Entre Rios - Argentina
Posts: 69
Poder: 22
miguelb Va por buen camino
Update con sql

Hola a todos,
Utilizo Paradox 7
Necesito hacer lo siguiente
Tengo una tabla recibos a la cual le agregue un nuevo campo llamado identificador_recibo.
Para hacerle una carga inicial de los valores tengo que tomar el valor que tenga el campo identificador_linea del primer registro de la tabla lineas.
La tabla linea tiene como clave el numero_recibo e item_recibo,
por cada recibo, tengo que buscar la primer linea relacionada, tomar el valor del campo identificador_linea y cargarlo en indetificador_recibo.
Se puede hacer esto con sql?
Si es asi, como es la sentencia?

Desde ya muchas gracias.
Existen algun tutorial avanzado para sql en castellano?
Gracias
Miguel
Responder Con Cita
  #2  
Antiguo 08-07-2003
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
la verdad... no entendí tu pregunta.

Podrias tratar de ser mas claro... quizas incluir la estructura de las tablas??
__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #3  
Antiguo 08-07-2003
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
No lo he probado, pero diria que seria algo asi

Código:
update recibos r
     set identificador_recibo =
                  (select min(l.identificador_linea)
                   from linea l
                   where l.indetificador_recibo = r.indetificador_recibo)
a ver si te sirve
Responder Con Cita
  #4  
Antiguo 10-07-2003
miguelb miguelb is offline
Miembro
 
Registrado: may 2003
Ubicación: Entre Rios - Argentina
Posts: 69
Poder: 22
miguelb Va por buen camino
Cadetill:

No funciono.

La sentencia que puse es la siguiente:
update as_reci.db r set soci_ar =
(select min (c.nume_ca) from as_coas.db c
where c.codi_ca = r.codi_ar
and c.cont_ca = r.cont_ar
and c.reci_ca = r.nume_ar)

Me aparece el siguiente error
Error de Base de Datos (Type mismatch in expresion)
Codigo 11871

Los campos son los siguientes (con sus tipos de datos segun Paradox) :

codi_ar A 3 CODI_CA A 3
nume_ar I RECI_CA I
CONT_ar I CONT_CA I
SOCI_ar I NUME_CA I

Sugerencias?
Gracias
Miguel
Responder Con Cita
  #5  
Antiguo 11-07-2003
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
pues acabo de crear las 2 tablas en PDOX (con la unica diferencia que todos son enteros, pero que por esto no deberia de fallar) y he puesto el siguiente SQL y me ha funcionado a la perfeccion

Código:
update as_reci.db r set soci_ar = 
           (select min(c.nume_ca)
            from as_coas.db c
            where c.codi_ca = r.codi_ar and
                  c.cont_ca = r.cont_ar and
                  c.reci_ca = r.nume_ar)
usease, lo mismo que tu

El SQL esta lanzado desde el SQL Explorer, no desde una app Delphi, pero deberia de funcionar igual

P.D. : acabo de hacer un copy-paste de tu sentencia SQL y tb me a funcionado
P.D.2 : he cambiado los tipos de datos y he puesto los mismos que tu y tambien me ha funcionado
Responder Con Cita
  #6  
Antiguo 11-07-2003
miguelb miguelb is offline
Miembro
 
Registrado: may 2003
Ubicación: Entre Rios - Argentina
Posts: 69
Poder: 22
miguelb Va por buen camino
Entonces que puede ser?
Que me sugeris que pruebe?
Gracias
Responder Con Cita
  #7  
Antiguo 11-07-2003
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
mira de lanzar el SQL fuera del entorno de desarroyo. Si funciona, mira de poner los updates corresponientes, a ver por aqui si hacemos que funcione
Responder Con Cita
  #8  
Antiguo 21-07-2003
miguelb miguelb is offline
Miembro
 
Registrado: may 2003
Ubicación: Entre Rios - Argentina
Posts: 69
Poder: 22
miguelb Va por buen camino
A pesar de ejecutarlo fuera del entorno de desarrollo no me funciono.
Creo que voy a abandonar esta solucion y hacerlo recorriendo las tablas sin sql.
Gracias
miguel
Responder Con Cita
  #9  
Antiguo 25-07-2003
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
con que programa has ejecutado los SQL fuera del entorno de desarroyo? con el Database Desktop?

Has revisado tu alia a ver si esta bien configurado??

No se, son ideas
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 19:46:09.


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