Prisma无法将可选外键设为null的问题求助
解决Prisma中可选外键设置为null的问题
你遇到的问题是因为错误地通过关联模型字段来清除外键,正确的做法是直接操作外键字段vehicle_model_category_id,而不是关联模型Vehicle_Model_Category。
正确的更新代码
const vehicle = await prisma.vehicle.update({ where: { id, }, data: { vehicle_model_category_id: null, // 直接设置外键字段为null }, });
原因说明
- Prisma的关联字段(比如
Vehicle_Model_Category)在更新时,不接受null作为值,这就是你收到报错的原因; - 传递
undefined时,Prisma会忽略该字段的更新请求,所以原有外键值不会被清除; - 直接操作外键字段
vehicle_model_category_id是直接对数据库字段进行修改,和你在MySQL中手动设置null的逻辑一致,能正常生效。
内容的提问来源于stack exchange,提问作者n9p4
相关产品推荐
相关产品推荐

