Du skrev:"Jeg kan stadig indsætte tomme strenge (=NULL)," hvilket lyder som en misforståelse. I SQL evalueres en tom streng ikke til NULL eller omvendt. Prøv at indsætte en tom streng og gør SELECT from wall where token_message is NULL
. Du bør få nul rækker tilbage. Prøv derefter at lave en indsættelse, hvor du angiver NULL
(uciteret) som værdien for din kolonne, og du skulle få den forventede fejlmeddelelse.
Hvis de test virker som forventet, så er alt i orden, og dit problem er faktisk, at du vil forhindre tomme strenge i at blive indsat. Tjek dette spørgsmål for forslag, eller bare tjek for tomme strenge under validering før forespørgslen.