Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-07-2007
Val Val is offline
Miembro
 
Registrado: feb 2007
Posts: 51
Poder: 18
Val Va por buen camino
Procedimiento en Firebird con parámetro NULL

Hola foro!

Tengo un procedimiento en Firebird que recibe una serie de parámetros y uno de ellos en alguna ocasión puede ser nulo. Si lo ejecuto con IBExpert y marco este argumento como nulo va bien, pero desde mi código no logro pasar este argumento como nulo, me lo toma como 0 con lo que el resultado obtenido no es el deseado.

Gracias
Responder Con Cita
  #2  
Antiguo 06-07-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Pero, ¿Porque no puedes hacerlo desde tu codigo?, ¿Te muestra algún error?, Seguramente sera de ayuda que nos muestres el codigo en cuestión.
__________________
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
  #3  
Antiguo 06-07-2007
Val Val is offline
Miembro
 
Registrado: feb 2007
Posts: 51
Poder: 18
Val Va por buen camino
En firebird tengo un procedimiento almacenado:

Código SQL [-]
CREATE PROCEDURE REGISTRAR (
    mivariable smallint)
as
begin
// Aquí va mi código
end

Y si ejecuto este procedimiento con el IBExpert marcando "mivariable" como NULL pues no pasa nada.

En cambio en mi aplicación tengo el código:

Código Delphi [-]
procedimiento.Clear;
procedimiento.ParamByName('mivariable').AsString := 3;
procedimiento.Prepare;
procedimiento.ExecProc;

Si en la segunda linea ponto 3, 4 o algún otro número mi base de datos se modifica correctamente, pero si no doy valor a ese parámetro o trato de ponerle a nulo me modifica la base de datos igual que si le paso un cero.
Responder Con Cita
  #4  
Antiguo 06-07-2007
mamaro mamaro is offline
Miembro
 
Registrado: mar 2004
Posts: 79
Poder: 21
mamaro Va por buen camino
hola

Hola .. no tengo un delphi a mano ahora pero, creo que por más que sean parámetros en null se les debe asignar el valor de la siguiente forma:

...parambyname('nombredelparametro').value:=null;
Responder Con Cita
  #5  
Antiguo 09-07-2007
Val Val is offline
Miembro
 
Registrado: feb 2007
Posts: 51
Poder: 18
Val Va por buen camino
Eso ya lo he probado y en el procedimiento me toma ese parámetro como 0 en lugar de NULL.

Hasta que de con la forma de hacerlo "bien" he modificado el procedimiento de tal forma que nunca sea necesario recibir ese parámetro con valor 0 y que cuando detecte que tiene ese valor lo cambie a nulo.
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
Parametro nulo en un procedimiento almacenado Viky SQL 3 29-03-2007 22:45:22
Averiguar si un parametro admite NULL oneril SQL 0 08-08-2006 11:36:07
Problemas con parametro Null en MSSQL Server 2000 pigu SQL 1 27-10-2005 22:18:44
Pasar parametro a un procedimiento? danytorres Varios 2 12-12-2003 09:55:09
Si el parámetro es null mostrar todos jam Firebird e Interbase 5 25-11-2003 22:43:24


La franja horaria es GMT +2. Ahora son las 17:31:02.


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