반응형
오라클에서 테이블의 모든 열을 null에서 null로 설정하는 방법
저는 40개의 기둥이 있는 테이블이 1개 있습니다.40개의 열 중 5개의 열만 NOT NULL이고 나머지 열은 NULL로 설정됩니다. 어떻게 하면 모든 NULL 열을 NOT NULL로 한 번에 설정하거나 TOAD에서 설정할 수 있을까요?NOT NULL로 수동으로 설정한 것 외에 가능성이 있습니까?
사용할 수 있습니다.Alter Table
명령을 내리다다음 방법:
ALTER TABLE table_name
MODIFY (column_1 column_type NOT NULL,
column_2 column_type NOT NULL,
...
column_n column_type);
이렇게 하면 모든 열의 변경사항이 한 번에 완료됩니다.또한 테이블에 이미 해당 열에 null 값이 있는 데이터가 있는 경우 기본값도 정의해야 합니다.다음은 샘플입니다.
ALTER TABLE table_name
MODIFY (column_1 varchar2(100) DEFAULT 'some default' NOT NULL,
column_2 varchar2(75) DEFAULT 'Some Value' NOT NULL);
대체 테이블이 작동합니다.
alter table [nameOfYourTable] modify [nameOfColumn] [dataType] not null
당신은 순환할 수 있습니다.USER_TAB_COLUMNS
(ALL_TAB_COLUMNS
와 함께owner = 'schema'
) 및ALTER
사용.EXECUTE IMMEDIATE
.
이를 실행하기 전에 먼저 기존 NULL이 포함된 테이블을 적절한 값으로 업데이트할 수 있습니다.
SET SERVEROUTPUT ON
BEGIN
FOR q IN (
SELECT 'ALTER TABLE ' || table_name || ' MODIFY ' || column_name || ' NOT NULL' AS query
FROM user_tab_columns
WHERE table_name = 'YOURTABLE'
AND NULLABLE = 'Y'
)
LOOP
DBMS_OUTPUT.PUT_LINE(q.query);
EXECUTE IMMEDIATE q.query;
END LOOP;
END;
언급URL : https://stackoverflow.com/questions/49534043/how-to-set-all-column-from-null-to-not-null-in-table-in-oracle
반응형
'programing' 카테고리의 다른 글
WireMock 포트를 보다 동적으로 만들어 테스트 서비스에 사용하려면 어떻게 해야 합니까? (0) | 2023.09.23 |
---|---|
도커 컨테이너가 빠져나가는 이유를 어떻게 알 수 있습니까? (0) | 2023.09.23 |
jquery에서 모든 ajax 요청을 잡습니다. (0) | 2023.09.23 |
사용자가 읽을 수 있는 형식으로 날짜 형식 지정 (0) | 2023.09.23 |
만료일이 없는 자바스크립트 쿠키 (0) | 2023.09.23 |