Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-03-2012
ALVARO RUBIO ALVARO RUBIO is offline
Miembro
NULL
 
Registrado: feb 2012
Posts: 23
Poder: 0
ALVARO RUBIO Va por buen camino
Campo texto a campo numerico con sql

Uso una aplicaion que tien un tabla llamada facturas con un campo numero tipo integer y una tabla cartera con un campo cruce, char(15), requiero que los dos campos tengan el mismo tipo para realionarlos en varias consultas.

Solo tengo disponobilidad de herramientas SQL, Puedo crear un campo en la tabla cartera, tipo integer, y necesito colocar en este campo los valores que hay hoy en Cruce usando ena sentencia SQL.

Al crear el campo, le puedo decir que se llene con el valor que tenga el campo CRUCE.
Y que cada vez que se realice un nuevo registro en la tabla cartera, el campo nuevo se llene con el valor convertido a INTEGER de el campo Cruce.

Gracias a todos por dediacr su tiempo a colaborarme.


AR
__________________
Alvaro Rubio R
Responder Con Cita
  #2  
Antiguo 29-03-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
No entiendo.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #3  
Antiguo 29-03-2012
ALVARO RUBIO ALVARO RUBIO is offline
Miembro
NULL
 
Registrado: feb 2012
Posts: 23
Poder: 0
ALVARO RUBIO Va por buen camino
Creo que no estoy muy claro

De mi aplicacion necesito obtener informacion de dos tablas, solo que la llaveCAmpo) comun entre las dos es de diferente tipo, en una es caracter de 15, y en la otra es INTEGER.

Consulte y varias personas me digeron que mediante SQL, no podia hacer nada. Crei que la solucion era crear un nuevo campo que fuera del mismo tipo, para luego llenarlo con los datos del campo viejo, el cual seguira actualizandose.

El campo nuevo tendra el mismo tipo que el d ela otra tabla y asi podre conbinar la informacion.

Si al crear el campo, le pudiera incluir una isntruccion para que se llenara con los datos del campo viejo tipo char de 15, cada vez que en esa tabla se insete un registro, seria magnifico.

Los datos del campo nuevo los llenaria con una sentencia SQL, que me convierta el tipo CHAR15, en Integer.

Algo asi como
Update cartera set nuevocampo=integer(cruce), si INTEGER fuera la instruccion que me convierte el char a integer.


Gracias

AR
__________________
Alvaro Rubio R
Responder Con Cita
  #4  
Antiguo 29-03-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Lo que no entiendo es para que necesitas que los campos sean del mismo tipo integer.
No se que estaras buscando, pero creo que podrias tomar ambos datos, pasarlos a variables y ahi dejar los datos como quieres sin necesidad de hacer un campo o tabla adicional.
Como digo: No entiendo la razon .
Saludos
__________________
Siempre Novato
Responder Con Cita
  #5  
Antiguo 29-03-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
El hacer un campo y hacerle un update no seria muy complicado, no creo que se necesite hacer ningun cambio de la condicion (char/integer) ya que simplemente captaria el dato, eso si, si antes se hiciera el cambio mediante una variable que lo contenga, como dije anteriormente.
No he hecho ninguna prueba, pero creo que ademas necesitaras especificar la linea, osea, un campo que defina el update.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #6  
Antiguo 29-03-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Definitivamente, no se entiende qué quiere hacer realmente
Responder Con Cita
  #7  
Antiguo 29-03-2012
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Según lo comprendí tras varias lecturas, una vez creado el nuevo campo podrías usar una sentencia Update para rellenarlo con el contenido del viejo campo:

Código SQL [-]
Update Cartera Set NuevoCampo = Cruce

Aunque Cruce sea de tipo Char, me parece que tendría que funcionar mientras contenga dígitos decimales solamente (por ser NuevoCampo de tipo Integer).

Y para:

Cita:
Empezado por ALVARO RUBIO Ver Mensaje
[...] le pudiera incluir una isntruccion para que se llenara con los datos del campo viejo tipo char de 15, cada vez que en esa tabla se insete un registro
necesitarías un disparador After Insert.

No puedo asegurar que lo planteado sea la mejor solución al problema, porque el problema de fondo no lo has descrito (la necesidad de relación que mencionas al principio), así como tampoco has mencionado qué motor de base de datos utilizas. Esta información resultaría útil.

Saludos.
Responder Con Cita
  #8  
Antiguo 29-03-2012
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Corrijo: lo del disparador sería mejor Before Insert.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Usar like con campo numerico? xavisosa SQL 1 10-11-2009 16:55:07
Incrementar en 1 un campo númerico efelix Conexión con bases de datos 5 03-12-2007 20:36:54
Como se si un campo es numerico? MadeInBsAs Varios 3 02-09-2007 17:06:41
Relacion campo numérico vs campo string JorgeBec Varios 1 11-04-2005 19:26:51
Campo numerico silviodp Conexión con bases de datos 1 10-06-2004 00:42:51


La franja horaria es GMT +2. Ahora son las 03:35:22.


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