01. juli 2003 - 00:44
Der er
18 kommentarer og 1 løsning
Værdi skal være NULL
Hej. Hvordan får jeg en værdi i min tabel til at være NULL ? Jeg kan ikke bare skrive NULL - desværre :)
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
Indsætter vha. $insertSQL = "insert into users osv osv
Er du sikker på at tabellen ikke er lavet med 'NOT NULL'?
Du kan sætte Nulværdi = null. Så vil den være NULL, hvis du ikke indsætter noget.
Nogen af felterne er - men dem jeg vil have til at være NULL, er det som standard. Men hvis jeg vælger ikke at indsætte noget i feltet, så er det bare tomt.
Så sæt Standardværdi = NULL
Det er jo standard-værdien. Hvordan får jeg denne frem ? Ved IKKE at udfylde feltet ?
Hmm, følgende virker ellers fint her!? mysql_query("insert into null_test values(NULL)"); Hvilken datatype er der tale om?
Et felt ser sådan ud : user_newpasswd varchar(32) default NULL, Jeg kan fylde data i det. Men hvis jeg ikke fylder noget i, så er feltet bare tomt - og ikke NULL
Jeg mener ikke varchar kan være NULL. Prøv med fx text.
01. juli 2003 - 01:07
#10
Er det så ikke fordi du indsætter med: insert ..... values("")?? ...for hvis jeg opretter en tabel med samme datatype og indsætter med insert ..... values() så bliver værdien NULL.
01. juli 2003 - 01:09
#11
Jeg indsætte sådan : $insertSQL = "insert into users (felt1, felt2) VALUES ('værdi', 'værdi')"; Jeg har også et felt3 - denne har jeg udeladt, og jeg ville derfor mene, at værdien ville blive NULL - korrekt ?
01. juli 2003 - 01:15
#12
Jo og det bliver den også her!?
01. juli 2003 - 01:18
#13
hmm, det var pudsigt. Jeg kan slet ikke oprette et varchar felt med NULL som standardværdi.
01. juli 2003 - 01:19
#14
Jo, undskyld. Jeg får samme resultat som abpdk
01. juli 2003 - 01:25
#15
Mærkeligt. Nu virker det også pludselig. Beklager da meget :-) Jeg sætter lige 5 points mere på spil :-) Burde now() ikke udskrive tiden i unix-time ? Bemærk, at feltet er Integer ! Og det kan ikke laves om. Så jeg kan vel ikke bruger now her ? Alternativer ?
01. juli 2003 - 01:33
#16
Jeg mener ikke at php har en funktion der hedder now(), hvis det var det du mente (mysql har dog). Hvis du vil ha' et unix timestamp i php så prøv funktionen time().
01. juli 2003 - 01:35
#17
Faktisk er det måske smartere at bruge mysql: UNIX_TIMESTAMP(NOW()) (i mysql).
01. juli 2003 - 01:35
#18
sidste parantés skal naturligvis ikke med :)
01. juli 2003 - 01:45
#19
Takker
Computerworld tilbyder specialiserede kurser i database-management