0
실패 할 것으로 예상했지만 대신 기존 데이터를 지우고 빈 문자열로 바꿉니다. 이것은 올바른 행동입니까? 내가 무엇을 기대되는 1048 열 'COLUMNA가' null 일 수 없습니다 :이 경우, 작업은NOT NULL var char 필드를 업데이트하려고하면 필드가 실패하지 않고 빈 문자열로 설정됩니다. 이 올바른 동작입니까
CREATE TABLE testtable
(columna VARCHAR(30) NOT NULL,
columnb VARCHAR(2) NULL,
columnc VARCHAR(10) NULL);
INSERT INTO testtable (columna, columnb, columnc)
VALUES ('first entry', '1', null),
('second entry', '2', null),
('third entry', '3', null);
INSERT INTO testtable (columna, columnb, columnc)
VALUES (null, '4', null);
이 오류 오류 코드와 함께 실패 오류 대신
예를 강제로 주위가 . 그러나
,
UPDATE testtable
SET columna = null WHERE columnb = '2';
는
Select * from testtable;
first entry 1
2
third entry 3