Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
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 30-01-2008
luisgutierrezb luisgutierrezb is offline
Miembro
 
Registrado: oct 2005
Ubicación: México
Posts: 925
Poder: 21
luisgutierrezb Va por buen camino
generalmente funciona:

Código SQL [-]
Cast(CampoCadena as INTEGER)
Responder Con Cita
  #2  
Antiguo 30-01-2008
Avatar de linuz
linuz linuz is offline
Miembro
 
Registrado: sep 2004
Posts: 88
Poder: 22
linuz Va por buen camino
He probado a poner
Código SQL [-]
cast (cadena as INTEGER)
me compila bien, pero no funciona para lo que quiero hacer.

Lo que me interesa hacer es coger 2 caracteres de una cadena de texto, y pasarlos a un entero.

Os pongo un trozo del codigo:

Código SQL [-]
 for select empresa,cod_postal,codigo_cliente,num_direccion from cli_direcciones
     into :empresa,:codigo_postal,:cliente,:direccion do
     begin
      provincia2 = substrlen(codigo_postal,1,2);
      provincia = cast(provincia2 as INTEGER);
...


¿Alguna idea?

Muchas gracias.
Responder Con Cita
  #3  
Antiguo 30-01-2008
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.070
Poder: 32
jhonny Va camino a la famajhonny Va camino a la fama
Cita:
Empezado por linuz Ver Mensaje
He probado a poner
Código SQL [-]
cast (cadena as INTEGER)
me compila bien, pero no funciona para lo que quiero hacer.

Lo que me interesa hacer es coger 2 caracteres de una cadena de texto, y pasarlos a un entero.

Os pongo un trozo del codigo:

Código SQL [-]
 for select empresa,cod_postal,codigo_cliente,num_direccion from cli_direcciones
     into :empresa,:codigo_postal,:cliente,:direccion do
     begin
      provincia2 = substrlen(codigo_postal,1,2);
      provincia = cast(provincia2 as INTEGER);
...


¿Alguna idea?

Muchas gracias.
Pues lo unico que veo mal según lo que te entiendo, es que no es substrlen si no substring y se usa asi:

Código SQL [-]
 for select empresa,cod_postal,codigo_cliente,num_direccion from cli_direcciones
     into :empresa,:codigo_postal,:cliente,:direccion do
     begin
      provincia2 = substring(codigo_postal FROM 1 FOR 2);
      provincia = cast(provincia2 as INTEGER);
...

Espero te sirva.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #4  
Antiguo 31-01-2008
Avatar de linuz
linuz linuz is offline
Miembro
 
Registrado: sep 2004
Posts: 88
Poder: 22
linuz Va por buen camino
Hola,

He probado a cambiar el código poniendo:
Código SQL [-]
provincia2 = substring(codigo_postal FROM 1 FOR 2);
Efectivamente el código es correcto, pero me sigue cogiendo una cadena de texto y no un entero.
No se como puedo hacer esto.

Ante todo muchas gracias por vuestra ayuda.

Un saludo.
Responder Con Cita
  #5  
Antiguo 31-01-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Pues otra vuelta de tuerca más:

Código SQL [-]
provincia2 = cast( substring(codigo_postal FROM 1 FOR 2) as integer);

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #6  
Antiguo 31-01-2008
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 30
jachguate Va por buen camino
Y otra vuelta de tuerca mas.. :D
Código SQL [-]
for select empresa, cod_postal, codigo_cliente, num_direccion,
           cast( substring(cod_postal FROM 1 FOR 2) as integer)
      from cli_direcciones
      into :empresa, :codigo_postal, :cliente, :direccion, :provincia do
begin
  /*lo que haya que hacer!*/

Hasta luego.

;)
__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #7  
Antiguo 31-01-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
.... Al final lo "pasaremos de rosca".... fijo .


Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
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
pasar un varchar hh:mm:ss a integer de segundos jmlifi SQL 5 02-05-2006 11:00:54
Cambio de dominio en un Varchar Ana Tudela Firebird e Interbase 1 10-01-2006 21:17:12
Cambiar dominio VARCHAR micayael Firebird e Interbase 1 24-09-2005 00:30:50
trim en campos varchar galmacland SQL 3 12-03-2005 02:40:23
varchar (10) scooterjgm SQL 4 11-11-2004 13:21:02


La franja horaria es GMT +2. Ahora son las 19:34:39.


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