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 27-09-2012
Avatar de jooooseph
jooooseph jooooseph is offline
Miembro
 
Registrado: oct 2007
Posts: 50
Poder: 17
jooooseph Va por buen camino
poner un campo existente en nulo

Bueno... ahora tengo este problemilla.... Tengo un registro ingresado con la fecha de su boda, lo que necesito es que cuando haga alguna modificacion y necesite que la fecha de boda este vacia o null se guarde como tal.

tengo mi UPDATE y en el SET aparte de otros campos a modificar tendo FECHA_BODA = :FECHA_B
Código Delphi [-]
fecha2:=null // intente de esta forma 
// SQLQUERY1.ParamByName('FECHA_B').clear;    tambien de esta forma
SQLQUERY1.ParamByName('FECHA_B').AsDate:=FECHA2;

Espero puedan darme una manito. Gracias de antemano
Responder Con Cita
  #2  
Antiguo 27-09-2012
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 23
maeyanes Va por buen camino
Hola...

Intenta poniendo su valor en 0 (cero).


Saludos...
__________________
Lee la Guía de Estilo antes que cualquier cosa. - Twitter
Responder Con Cita
  #3  
Antiguo 27-09-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Usa el método Clear del campo, que para eso está. Claro que en tu base debes haber especificado que ese campo acepta valores NULL.

// Saludos
Responder Con Cita
  #4  
Antiguo 27-09-2012
Avatar de jooooseph
jooooseph jooooseph is offline
Miembro
 
Registrado: oct 2007
Posts: 50
Poder: 17
jooooseph Va por buen camino
Cita:
Empezado por maeyanes Ver Mensaje
Hola...

Intenta poniendo su valor en 0 (cero).


Saludos...

Cuando lo pongo a cero la fecha cambia a 30/12/1899 que para el caso de mi proyecto no serviría, debido que necesito que la fecha esté vacía. gracias por la ayuda.
Responder Con Cita
  #5  
Antiguo 27-09-2012
Avatar de jooooseph
jooooseph jooooseph is offline
Miembro
 
Registrado: oct 2007
Posts: 50
Poder: 17
jooooseph Va por buen camino
Cita:
Empezado por roman Ver Mensaje
Usa el método Clear del campo, que para eso está. Claro que en tu base debes haber especificado que ese campo acepta valores NULL.

// Saludos
puese en clear la propiedad, pero nada...me da este error

Para todo esto la tabla la tengo asi creada.

Código SQL [-]
CREATE TABLE MIEMBROS (
  CODIGO_MIEMBRO SMALLINT NOT NULL,
  NOMBRE_COMPLETO VARCHAR(50) NOT NULL,
  NOMBRE VARCHAR(30) NOT NULL,
  APELLIDOS VARCHAR(30),
  FECHA_NACIMIENTO DATE,
  SEXO VARCHAR(9),
  ESTADO_CIVIL VARCHAR(13) NOT NULL,
  FECHA_BODA DATE,
  CORREO VARCHAR(50),

gracias por la ayuda
Imágenes Adjuntas
Tipo de Archivo: jpg ERROR.jpg (35,5 KB, 9 visitas)

Última edición por jooooseph fecha: 27-09-2012 a las 21:44:06.
Responder Con Cita
  #6  
Antiguo 27-09-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola jooooseph.

¿ Probaste aplicando el método Clear sobre el campo como te sugirió roman ?

Ejemplo:
Código Delphi [-]
   SQLQuery1.FieldByName('FECHA_NACIMIENTO').Clear;
Por que en tu código lo estabas aplicando sobre el parámetro...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #7  
Antiguo 27-09-2012
Avatar de jooooseph
jooooseph jooooseph is offline
Miembro
 
Registrado: oct 2007
Posts: 50
Poder: 17
jooooseph Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola jooooseph.

¿ Probaste aplicando el método Clear sobre el campo como te sugirió roman ?

Ejemplo:
Código Delphi [-] SQLQuery1.FieldByName('FECHA_NACIMIENTO').Clear;

Por que en tu código lo estabas aplicando sobre el parámetro...

Saludos.
Tambien lo hice asi... pero nada-

Bueno chicos.... Gracias por su tiempo pero lo solucioné con algo mas sencillo.
en el mismo codigo del SQLquery.text modifique el paramtro de :Fecha_B por null y ya no hubo la necesidad de crear ni llamar al parametro o aplicar el clear (no funciona)

Código SQL [-]
Update Tabla set ******** fecha_boda = null, ******* where codigo=:cod
Responder Con Cita
  #8  
Antiguo 28-09-2012
ElMug ElMug is offline
Miembro
NULL
 
Registrado: jul 2012
Posts: 163
Poder: 12
ElMug Va por buen camino
Cita:
Empezado por jooooseph Ver Mensaje
Tambien lo hice asi... pero nada-

Bueno chicos.... Gracias por su tiempo pero lo solucioné con algo mas sencillo.
en el mismo codigo del SQLquery.text modifique el paramtro de :Fecha_B por null y ya no hubo la necesidad de crear ni llamar al parametro o aplicar el clear (no funciona)

Código SQL [-]Update Tabla set ******** fecha_boda = null, ******* where codigo=:cod
fecha_boda = null es lo correcto.

"Nulo" es ausencia de data. El valor cero no es eso.

Ahora que Clear se usa para DESTRUIR objetos, y posiblemente se pueda usar para eliminar una columna,
mas no la data contenida en un campo.
Responder Con Cita
  #9  
Antiguo 28-09-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Ahora que Clear se usa para DESTRUIR objetos, y posiblemente se pueda usar para eliminar una columna,
mas no la data contenida en un campo.
Hola ElMug.

En realidad el método Clear sí pone el valor de un TField en NULL.

(Extraido de la ayuda de Delphi):
Cita:
Clear method (TField)
Sets the value of the field to NULL.

Delphi syntax:

procedure Clear;

C++ syntax:

virtual void __fastcall Clear(void);

Description

Call the Clear method to give the field a blank value (a NULL value in SQL terms).
Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #10  
Antiguo 28-09-2012
ElMug ElMug is offline
Miembro
NULL
 
Registrado: jul 2012
Posts: 163
Poder: 12
ElMug Va por buen camino
Gracias por la aclaracion. Ya vi que si debe de hacerlo.

Estaba leyendo "Clear" fomo "Free". Free es el que se aplica a objetos (es Destroy condicionado a que el objeto exista).

Última edición por ElMug fecha: 28-09-2012 a las 06:07:33.
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
Comprobar si un campo es nulo Gabo C++ Builder 2 08-10-2007 23:08:11
Consulta a un campo nulo edelphi SQL 1 06-08-2007 22:11:23
Modificar campo ya existente FunBit MySQL 4 02-08-2005 09:01:43
Campo con valor nulo fjcg02 Conexión con bases de datos 4 10-11-2004 08:55:07
Campo fecha nulo... seb@ Conexión con bases de datos 2 01-10-2003 18:42:48


La franja horaria es GMT +2. Ahora son las 14:57:48.


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