[PHP] Leeg datumveld vervangen

Pagina: 1
Acties:

  • pctje
  • Registratie: Juni 2000
  • Laatst online: 27-08 13:55
Het DATE field in MYSQL wordt automatish met 0000-00-00 gevuld als je niets invuld in de cel.

Als je dit dus in je overzicht wilt bekijken is dat niet makkelijk. Dat wil ik dus gewoon vervangen door "" niets dus.

Is er ook een soort van query mogelijk waarbij je zegt:

Als datefield = 0 then "" ??

Verwijderd

Had je bij het maken van die tabel niet beter kunnen toestaan dat die kolom null kan bevatten?

  • pctje
  • Registratie: Juni 2000
  • Laatst online: 27-08 13:55
je krijgt te allen tijde de notatie 0000-00-00

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Op vrijdag 21 juni 2002 15:44 schreef pctje het volgende:
je krijgt te allen tijde de notatie 0000-00-00
:? Als jij dat veld toelaat om NULL te bevatten kun jij dat er gewoon in stoppen hoor. En dat is niet gelijk aan 0000-00-00 dacht ik.

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Cheatah:
Had je bij het maken van die tabel niet beter kunnen toestaan dat die kolom null kan bevatten?
Dat kan je alsnog wel doen.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
ALTER TABLE 
   tabel
CHANGE 
   veld veld
   TIMESTAMP 
DEFAULT 
   NULL;

UPDATE 
   tabel
SET
   veld=NULL
WHERE
   TO_DAYS(veld)=0;

edit: laat ik wel consequent zijn in namen O-)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

Op vrijdag 21 juni 2002 15:44 schreef pctje het volgende:
je krijgt te allen tijde de notatie 0000-00-00
Toch vreemd dan, ik krijg gewoon NULL als er in de database ook NULL staat?

  • pietje63
  • Registratie: Juli 2001
  • Laatst online: 13:34

pietje63

RTFM

maar is in een datumveld 00-00-0000 niet gelijk aan 0???
en je kunt het toch via php doen...
PHP:
1
<?if ($datum=="00-00-0000"){$datum = "";}?>

De grootste Nederlandstalige database met informatie over computers met zoekfunctie!!


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

pietje63:
maar is in een datumveld 00-00-0000 niet gelijk aan 0???
en je kunt het toch via php doen...
regeltje:
• geen data is NULL
• 0 is waarde 0 en moet je dus niet verwarren met NULL

conclusie:<li> gebruik NULL
</li>
PHP:
1
<?if ($datum=="00-00-0000"){$datum = "";}?>
is vies. SQL is nou juist uitgevonden om je gegevens te uit te lezen. Als je dan met SQL gegevens terugkrijgt die je nog eens opnieuw moet gaan bewerken om een juiste resultset te krijgen, dan is er of iets mis met je database of met je query, en dat eerste is dus ook zo in dit geval :)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • WouZz
  • Registratie: Mei 2000
  • Niet online

WouZz

Elvis is alive!

Let wel op dat je NULL invoert ipv 'NULL' anders ziet MySQL het als een ongeldige datum notatie en zet ie em op 0000-00-00.

On track


  • Shagura
  • Registratie: Augustus 2001
  • Laatst online: 04-09 22:30
"" is trouwens een lege string en ook geen null :Y)

Verwijderd

de query om 0000-00-00 te vervangen in "":
code:
1
UPDATE tabel SET tijdveld="" WHERE tijdveld="0000-00-00"
Pagina: 1