Hai scritto "Posso ancora inserire stringhe vuote (=NULL)", che suona come un malinteso. In SQL, una stringa vuota non restituisce NULL o viceversa. Prova a inserire una stringa vuota ea fare SELECT from wall where token_message is NULL
. Dovresti recuperare zero righe. Quindi prova a fare un inserimento in cui specifichi NULL
(senza virgolette) come valore per la tua colonna e dovresti ricevere il messaggio di errore previsto.
Se quei test funzionano come previsto, allora va tutto bene e il tuo problema è in realtà che vuoi impedire l'inserimento di stringhe vuote. Dai un'occhiata a questa domanda per suggerimenti o semplicemente verificare la presenza di stringhe vuote durante la convalida, prima della query.