mysql - “列不能为空”

Jav*_*tar 4 mysql null

正如您在标题中看到的,即使我从相关字段中删除了“非空”功能,它仍然不允许我为该字段插入空值,尽管该字段可以为空!

任何帮助,将不胜感激。

已编辑

创建:

CREATE TABLE `review` (
..
`RATING` int(11) DEFAULT NULL,
..
(`CATALOG_ID`)
) ENGINE=InnoDB AUTO_INCREMENT=31625 DEFAULT CHARSET=latin5 ROW_FORMAT=DYNAMIC
Run Code Online (Sandbox Code Playgroud)

询问:

INSERT INTO review (RATING,..) VALUES (null,..);
Run Code Online (Sandbox Code Playgroud)

错误信息:

Error: Column 'RATING' cannot be null
SQLState:  23000
ErrorCode: 1048
Run Code Online (Sandbox Code Playgroud)

我也尝试在插入查询中插入而不使用 RATING,即使它是默认的 null 和可为空的字段,它也会给出相同的错误消息并且从不插入该字段。

Jav*_*tar 5

波西米亚人,感谢您的关注。你是对的,我发现插入操作有一个触发器会影响相关字段。我禁用了触发器并修复了错误。谢谢。