我正在尝试将enroll_date行更新为null并且它告诉我"cannot update (%s) to NULL"
,所以我尝试放TO_CHAR
但它仍然没有帮助......
enroll_date显示我要将其设为null
ENROLL_DATE
07-FEB-07
这就是我所拥有的
UPDATE ENROLLMENT
SET TO_CHAR(ENROLL_DATE) = NULL
WHERE STUDENT_ID ='125'
AND SECTION_ID ='61';
如何将enroll_date设置为null?
答案 0 :(得分:7)
删除TO_CHAR功能。您正在更新列,而不是函数值
UPDATE ENROLLMENT
SET ENROLL_DATE = NULL
WHERE STUDENT_ID ='125'
AND SECTION_ID ='61';
答案 1 :(得分:2)
该错误似乎告诉您,您的数据模型将enroll_date
定义为NOT NULL
列。因此,您不能将其设置为NULL。
您可以修改表定义以允许NULL值
ALTER TABLE enrollment
MODIFY( enroll_date DATE NULL )
但是,在定义不应更改的数据模型时,这似乎是一种有意的选择。我没有看到enrollment
如果没有enroll_date
会有什么意义。
答案 2 :(得分:1)
UPDATE ENROLLMENT
SET ENROLL_DATE = NULL
WHERE STUDENT_ID ='125'
AND SECTION_ID ='61';
如果这不起作用,则列定义可能为NOT NULL。
答案 3 :(得分:0)
使用ALTER COLUMN代替MODIFY
ALTER TABLE enrollment<br/>
ALTER COLUMN enroll_date DATE NULL