这个错误在MySQL中是什么意思?
ER_NO_DEFAULT_FOR_FIELD -“Field doesn 't have a default value”我发现它列在这里?http://mysqlserverteam.com/improvements-to-strict-mode-in-mysql/并得到:
{
"code": "ER_NO_DEFAULT_FOR_FIELD",
"errno": 1364,
"sqlState": "HY000",
"index": 0
}
字符串
这是通过expressjs在postman请求中回复的,但这似乎是我从其中获得的第一个表。该表具有外键,因此我为外键设置了默认值,但我仍然得到了它。什么给出了?索引[0]是否暗示了名称,我发送到服务器的第一个json值?
{
"name":"Cornwall Park Townhouses",
"line1":"17 Brewster Rd.",
"city":"Cornwall",
"state":32,
"zip":"12518",
"category":2,
"account_mgr":1,
"active":1
}
型
这是我的json
3条答案
按热度按时间lvjbypge1#
好吧,我猜你有一个字段需要一个值,没有默认值。所以当你插入到你的表中时,如果你没有为它提供一个有效的值,MySQL会抱怨。
如果你给我们展示了你的表,也许还可以插入查询,这会更有帮助,但是看看你的字段。如果你发现一个没有默认值的字段,你没有对它做任何事情,尝试插入它并为字段传递一个值,如果这解决了问题,那么你可以为该字段添加一个默认值,或者只是继续向它发送信息。
如果你不想要一个默认值,你可以将字段设置为允许空值而不是默认值。
amrnrhlw2#
这个问题的发生是由于许多原因
1.您还没有在API中为该列输入值(因为您还没有为该列设置某些默认值),如果您设置了某些默认值,则不会出现错误,因为SQL在该列中添加了模型/迁移的默认值,而没有显式地为该列提供任何数据
1.其次(我面对)我有关联使用别名2次,我的别名是相同的,而创建关联,所以我输入的列值和SQL抛出这个错误
因此,上述错误的总体结论是,您定义了一个没有默认值的列,并且您正在将该表添加到数据库中
uqxowvwt3#
我面临着同样的问题,然后我发现我有一个字段设置为AutoIncremented,但我忘了设置自动增量,所以如果你有一个字段,需要一个值,并没有默认设置,所以设置它自动增量,主键,Nothing。