Du får ett felmeddelande eftersom
user_id
kolumnen definieras somNOT NULL
user_id
kolumnen har inget standardvärde angivet- Du anger inte heller dess värde i din fråga
PS:frågan är irrelevant för ON DUPLICATE KEY UPDATE
klausul - det skulle vara samma fel om du inte använde det också.
PPS:oavsett om ON DUPLICATE KEY UPDATE
utlöst - din insert
bör uppfylla alla begränsningar