NOT NULL
열을 server
테이블에 추가하고 싶습니다. 문제는 테이블에 이미 레코드가 있다는 것입니다. ALTER TABLE server ADD COLUMN full_discovery_duration BIGINT NOT NULL
을 호출 할 때 H2는 full_discovery_duration
이 null 일 수 없다는 불평을합니다. DEFAULT 0
을 지정하여 문제를 해결할 수 있지만 향후 inserts에 대한 기본 값은 필요하지 않습니다. 내가 뭘해야하니?H2 : 레코드가있는 테이블에 NOT NULL 열 추가
열을 기본값으로 추가하고 다음 문에서 열 정의에서 DEFAULT 0
을 제거해야합니까? 더 좋은 방법이 있습니까?
다음 행을 실행하여 기본 정의를 제거했습니다 :'ALTER TABLE server ADD COLUMN cached_discovery_duration BIGINT NOT NULL DEFAULT 0; ALTER TABLE 서버 ALTER COLUMN cached_discovery_duration BIGINT NOT NULL;'첫 번째 행은 값이 '0'인 열을 추가합니다. 두 번째 줄은 기본값을 제거합니다. – Gili