테이블 생성 및 관리
테이블은 Oracle 데이터베이스에서 데이터 저장 영역의 기본 단위입니다. 테이블은 사용자가 액세스할 수 있는 데이터를 모두 보관합니다. 각 테이블에는 개별 데이터 레코드를 나타내는 행이 포함됩니다. 행은 레코드의 필드를 나타내는 열로 구성됩니다.
주: 이 문서의 자습서를 수행하려면 SQL Developer에서 사용자 HR로 Oracle Database에 접속되어 있어야 합니다.
참조:
-
테이블 생성 및 채우기가 포함된 SQL Developer 자습서용 Oracle SQL Developer User's Guide
-
테이블에 대한 일반적인 정보는 Oracle Database Concepts를 참조하십시오.
SQL 데이터 유형 정보
테이블을 생성할 때는 각 열에 대한 SQL 데이터 유형을 지정해야 하며, 이에 따라 열이 포함할 수 있는 값이 결정됩니다.
예를 들어, DATE 유형의 열에는 '01-MAY-05' 값이 포함될 수 있지만 숫자 값 2나 문자 값 'shoe'를 포함할 수 없습니다. SQL 데이터 유형은 내장 및 사용자 정의의 두 가지 범주에 속합니다. (PL/SQL에는 추가 데이터 유형이 있습니다. 자세한 내용은 "PL/SQL 데이터 유형 소개"를 참조하십시오.)
참조:
-
내장된 SQL 데이터 유형의 요약에 대한 Oracle Database SQL Language Reference
-
각 내장 SQL 데이터 유형을 소개하는 Oracle Database Concepts
-
사용자 정의 데이터 유형에 대한 자세한 내용은 Oracle Database SQL Language Reference를 참조하십시오.
테이블 생성
테이블을 생성하려면 SQL Developer 툴 테이블 생성이나 DDL 문 CREATE TABLE을 사용합니다.
이 섹션에서는 이러한 방법을 모두 사용하여 다음과 같은 직원 평가 데이터가 포함된 테이블을 생성하는 방법을 보여줍니다.
-
PERFORMANCE_PARTS - 평가되는 직원 성과의 범주와 해당 범주의 상대적 가중치를 포함합니다.
-
EVALUATIONS - 직원 정보, 평가 데이터, 직무, 관리자 및 부서를 포함합니다.
-
각 평가의 각 성과 범주에 지정된 점수를 포함하는 SCORES
이러한 테이블은 이 문서의 여러 자습서 및 예제에 나타납니다.
자습서: 테이블 생성 툴을 사용하여 테이블 생성
이 자습서에서는 SQL Developer 툴 [테이블 생성]을 사용하여 PERFORMANCE_PARTS 테이블을 생성하는 방법을 보여 줍니다.
테이블 생성 툴을 사용하여 PERFORMANCE_PARTS 테이블을 생성하려면 다음과 같이 하십시오.
-
Connections(연결) 프레임에서 hr_conn을 확장합니다.
-
스키마 객체 유형 목록에서 테이블을 마우스 오른쪽 버튼으로 누릅니다.
-
선택 항목 목록에서 새 테이블을 누릅니다.
[테이블 생성] 창이 열리고 하나의 행만 있는 새 테이블의 기본값이 표시됩니다.
-
[스키마]에 대해 기본값 HR을 사용합니다.
-
[이름]에
PERFORMANCE_PARTS를 입력합니다. -
기본 행의 경우:
-
PK(기본 키)의 경우 기본 옵션(선택 해제됨)을 적용합니다.
-
[열 이름]에
PERFORMANCE_ID를 입력합니다. -
[유형]에 기본값 VARCHAR2를 사용합니다.
-
[크기]에
2를 입력합니다. -
Not Null의 경우 기본 옵션인 선택 취소를 적용합니다.
-
-
열 추가를 누릅니다.
-
[열 이름]에
NAME을 입력합니다. -
[유형]에 기본값 VARCHAR2를 사용합니다.
-
[크기]에
80를 입력합니다. -
열 추가를 누릅니다.
-
[열 이름]에
WEIGHT를 입력합니다. -
[유형]의 경우 메뉴에서
NUMBER을 선택합니다. -
확인을 누릅니다.
테이블
PERFORMANCE_PARTS가 생성됩니다. 해당 이름은 Connections 프레임의 Tables 아래에 나타납니다.이 테이블 생성을 위한 CREATE TABLE 문을 보려면
PERFORMANCE_PARTS을 선택하고 SQL 탭을 누릅니다.
참조: SQL Developer를 사용하여 테이블을 생성하는 방법에 대한 자세한 내용은 Oracle SQL Developer User's Guide를 참조하십시오.
CREATE TABLE 문을 사용하여 테이블 생성
이 섹션에서는 CREATE TABLE 문을 사용하여 EVALUATIONS 및 SCORES 테이블을 생성하는 방법을 보여줍니다.
Example 4-1의 CREATE TABLE 문은 EVALUATIONS 테이블을 만듭니다.
예 4-2의 CREATE TABLE 문은 SCORES 테이블을 생성합니다.
SQL Developer의 Connections 프레임에서 Tables를 확장하면 EVALUATIONS 및 SCORES 테이블을 볼 수 있습니다.
예제 4-1 CREATE TABLE을 사용하여 EVALUATIONS 테이블 생성
CREATE TABLE EVALUATIONS (
EVALUATION_ID NUMBER(8,0),
EMPLOYEE_ID NUMBER(6,0),
EVALUATION_DATE DATE,
JOB_ID VARCHAR2(10),
MANAGER_ID NUMBER(6,0),
DEPARTMENT_ID NUMBER(4,0),
TOTAL_SCORE NUMBER(3,0)
);
결과:
Table created.
예제 4-2 CREATE TABLE을 사용하여 SCORES 테이블 생성
CREATE TABLE SCORES (
EVALUATION_ID NUMBER(8,0),
PERFORMANCE_ID VARCHAR2(2),
SCORE NUMBER(1,0)
);
결과:
Table created.
참조: Oracle Database SQL Language Reference에서 CREATE TABLE 문에 대해 설명합니다.
테이블의 데이터 무결성 유지
테이블의 데이터가 응용 프로그램에서 모델링하는 비즈니스 규칙을 충족하도록 하려면 제약 조건이나 응용 프로그램 논리 또는 둘 모두를 사용할 수 있습니다.
팁: 가능하면 응용 프로그램 논리 대신 제약 조건을 사용하십시오. Oracle 데이터베이스는 응용 프로그램 논리가 할 수 있는 것보다 훨씬 빠르게 모든 데이터가 제약 조건을 준수하는지 확인합니다.
참조:
-
데이터 무결성에 대한 추가 일반 정보는 Oracle Database Concepts를 참조하십시오.
-
제약 조건에 대한 구문 정보는 Oracle Database SQL Language Reference를 참조하십시오.
-
제약 조건을 사용 및 사용 안함으로 설정하는 방법에 대한 자세한 내용은 Oracle Database Development Guide를 참조하십시오.
제약 조건 정보
제약 조건은 열에 포함할 수 있는 값을 제한합니다. 제약 조건을 위반하는 방식으로 데이터를 변경하려고 하면 오류가 발생하고 변경 사항이 롤백됩니다. 채워진 테이블에 제약 조건을 추가할 때 기존 데이터가 제약 조건을 위반하는 경우 오류가 발생합니다.
제약 조건을 사용 및 사용 안함으로 설정할 수 있습니다. 기본적으로 사용 가능 상태로 생성됩니다.
사용 가능한 제약 조건 유형은 다음과 같습니다.
-
Not Null - 값이 널이 되지 않게 합니다.
EMPLOYEES 테이블의 LAST_NAME 열에는 모든 직원에게 성이 있어야 한다는 비즈니스 규칙이 적용됩니다.
-
고유 - 같은 열 또는 열의 조합에서 여러 행이 같은 값을 가지게 하지 못하게 하지만 일부 값이 널인 것은 허용합니다.
EMPLOYEES 테이블의 EMAIL 열에는 UNIQUE 제약조건이 있습니다. 즉, 직원이 전자 메일 주소를 가질 수는 없지만 다른 직원과 전자 메일 주소를 같으면 안 된다는 비즈니스 규칙이 적용합니다.
-
기본 키 - NOT NULL 및 UNIQUE의 조합
EMPLOYEES 테이블의 EMPLOYEE_ID 열에는 PRIMARY KEY 제약 조건이 포함됩니다. 즉, 모든 사원에게 고유한 직원 식별 번호가 있어야 한다는 비즈니스 규칙이 적용됩니다.
-
외래 키 - 한 테이블의 값이 다른 테이블의 값과 일치해야 합니다.
EMPLOYEES 테이블의 JOB_ID 열은 JOBS 테이블을 참조하는 FOREIGN KEY 제약 조건을 가지고 있습니다. 즉, 직원이 JOBS 테이블에 없는 JOB_ID를 가질 수 없음을 비즈니스 규칙이 적용됩니다.
-
확인 - 값이 지정된 조건을 만족해야 합니다.
EMPLOYEES 테이블에는 CHECK 제약 조건이 없습니다. 그러나 EMPLOYEES에 EMPLOYEE_AGE라는 새 열이 필요하고 모든 직원이 18세 이상이어야 한다고 가정합니다. CHECK
(EMPLOYEE_AGE >= 18)제약 조건으로 이러한 비즈니스 규칙이 적용됩니다.팁: 다른 제약 조건 유형으로 필요한 확인을 제공할 수 없는 경우에만 확인 제약 조건을 사용합니다.
-
REF - REF 열과 열이 참조하는 객체 간의 관계를 추가로 설명합니다.
REF 열은 다른 객체 유형이나 관계형 테이블의 객체를 참조합니다.
REF 제약 조건에 대한 자세한 내용은 Oracle Database Concepts을 참조하십시오.
참조:
- 제약 조건에 대한 구문 정보는 Oracle Database SQL Language Reference를 참조하십시오.
자습서: 기존 테이블에 제약 조건 추가
이 자습서에서는 SQL Developer 툴과 ALTER TABLE 문을 모두 사용하여 기존 테이블에 제약 조건을 추가하는 방법을 보여줍니다.
기존 테이블에 제약 조건을 추가하려면 SQL Developer 툴 또는 DDL 문 ALTER TABLE을 사용합니다. 이 항목에서는 이런 방법을 모두 사용하여 "테이블 생성"에서 생성한 테이블에 제약 조건을 추가하는 방법을 보여 줍니다.
이 자습서에는 몇 가지 프로시저가 있습니다. 첫번째 프로시저에서는 테이블 편집 툴을 사용하여 PERFORMANCE_PARTS 테이블의 NAMES 열에 Not Null 제약 조건을 추가합니다. 나머지 프로시저에서는 다른 툴을 사용하여 제약 조건을 추가하는 방법을 보여 주지만 동일한 제약 조건을 [테이블 편집] 도구로 추가할 수도 있습니다.
참고:
자습서의 모든 단계를 마운 후 다음 단계를 완료하여 테이블에 있는 제약 조건을 볼 수 있습니다.
-
Connections 프레임에서 테이블 이름을 선택합니다.
-
오른쪽 프레임에서 제약조건 탭을 누릅니다.
테이블 속성 및 데이터를 보는 방법은 "자습서: SQL Developer를 사용하여 EMPLOYEES 테이블 속성 및 데이터 보기"를 참조하십시오.
테이블 편집 툴을 사용하여 Not Null 제약 조건을 추가하는 단계:
-
Connections(연결) 프레임에서 hr_conn을 확장합니다.
-
스키마 객체 유형 목록에서 테이블을 확장합니다.
-
테이블 목록에서 PERFORMANCE_PARTS를 마우스 오른쪽 버튼으로 누릅니다.
-
선택 항목 목록에서 편집을 누릅니다.
-
테이블 편집 창에서 NAME 열을 누릅니다.
-
Not Null 속성을 선택합니다.
-
확인을 누릅니다.
PERFORMANCE_PARTS테이블의NAME열에 Not Null 제약조건이 추가됩니다.
다음 프로시저에서는 ALTER TABLE 문을 사용하여 PERFORMANCE_PARTS 테이블의 WEIGHT 열에 Not Null 제약 조건을 추가합니다.
ALTER TABLE 문을 사용하여 Not Null 제약 조건을 추가하는 단계:
-
hr_conn 탭이 있는 창이 있는 경우 선택합니다. 그렇지 않은 경우 "SQL Developer에서 질의 실행"에서와 같이 SQL 워크시트 아이콘을 누릅니다.
-
[워크시트] 창에서 다음 명령문을 입력합니다.
ALTER TABLE PERFORMANCE_PARTS MODIFY WEIGHT NOT NULL; -
명령문 실행 아이콘을 누릅니다.
이 명령문이 실행되어
PERFORMANCE_PARTS테이블의WEIGHT열에 Not Null 제약 조건을 추가합니다.
다음 프로시저에서는 [고유 추가] 툴을 사용하여 SCORES 테이블에 고유 제약 조건을 추가합니다.
고유 추가 툴을 사용하여 고유 제약 조건을 추가하는 단계:
-
Connections(연결) 프레임에서 hr_conn을 확장합니다.
-
스키마 객체 유형 목록에서 테이블을 확장합니다.
-
테이블 목록에서 SCORES를 마우스 오른쪽 버튼으로 누릅니다.
-
선택 항목 목록에서 제약 조건을 선택합니다.
-
선택 항목 목록에서 고유 추가를 누릅니다.
-
Add Unique window에서 다음을 수행합니다.
-
[제약 조건 이름]에
SCORES_EVAL_PERF_UNIQUE를 입력합니다. -
열 1의 경우 메뉴에서 EVALUATION_ID를 선택합니다.
-
열 2의 경우 메뉴에서 PERFORMANCE_ID를 선택합니다.
-
적용을 누릅니다.
-
-
[확인] 창에서 확인을 누릅니다.
SCORES_EVAL_PERF_UNIQUE라는 고유 제한 조건이SCORES테이블에 추가됩니다.
다음 프로시저에서는 기본 키 추가 툴을 사용하여 PERFORMANCE_PARTS 테이블의 PERFORMANCE_ID 열에 기본 키 제약 조건을 추가합니다.
Add Primary Key 툴을 사용하여 Primary Key 제약 조건을 추가하는 단계는 다음과 같습니다.
-
Connections(연결) 프레임에서 hr_conn을 확장합니다.
-
스키마 객체 유형 목록에서 테이블을 확장합니다.
-
테이블 목록에서 PERFORMANCE_PARTS를 마우스 오른쪽 버튼으로 누릅니다.
-
선택 항목 목록에서 제약 조건을 선택합니다.
-
선택 항목 목록에서 기본 키 추가를 누릅니다.
-
Add Primary Key window에서 다음을 수행합니다.
-
[기본 키 이름]에
PERF_PERF_ID_PK를 입력합니다. -
[열 1]에 대해 메뉴에서 PERFORMANCE_ID를 선택합니다.
-
적용을 누릅니다.
-
-
[확인] 창에서 확인을 누릅니다.
PERF_PERF_ID_PK라는 기본 키 제약 조건이PERFORMANCE_PARTS테이블의PERFORMANCE_ID열에 추가됩니다.
다음 프로시저에서는 ALTER TABLE 문을 사용하여 EVALUATIONS 테이블의 EVALUATION_ID 열에 기본 키 제약 조건을 추가합니다.
ALTER TABLE 문을 사용하여 기본 키 제약 조건을 추가하는 단계:
-
hr_conn 탭이 있는 창이 있는 경우 선택합니다. 그렇지 않은 경우 "SQL Developer에서 질의 실행"에서와 같이 SQL 워크시트 아이콘을 누릅니다.
-
[워크시트] 창에서 다음 명령문을 입력합니다.
ALTER TABLE EVALUATIONS ADD CONSTRAINT EVAL_EVAL_ID_PK PRIMARY KEY (EVALUATION_ID); -
명령문 실행 아이콘을 누릅니다.
이 명령문이 실행되어
EVALUATIONS테이블의EVALUATION_ID열에 기본 키 제약 조건이 추가됩니다.
다음 프로시저에서는 외래 키 추가 툴을 사용하여 SCORES 테이블에 두 개의 외래 키 제약 조건을 추가합니다.
외래 키 추가 툴을 사용하여 두 개의 외래 키 제약 조건을 추가하는 단계:
-
Connections(연결) 프레임에서 hr_conn을 확장합니다.
-
스키마 객체 유형 목록에서 테이블을 확장합니다.
-
테이블 목록에서 SCORES를 마우스 오른쪽 버튼으로 누릅니다.
-
선택 항목 목록에서 제약 조건을 선택합니다.
-
선택 항목 목록에서 외래 키 추가를 누릅니다.
-
Add Foreign Key window에서 다음을 수행합니다.
-
[제약 조건 이름]에
SCORES_EVAL_FK를 입력합니다. -
[열 이름]의 경우 메뉴에서 EVALUATION_ID를 선택합니다.
-
참조 테이블 이름의 경우 메뉴에서 EVALUATIONS를 선택합니다.
-
참조 열의 경우 메뉴에서 EVALUATION_ID를 선택합니다.
-
적용을 누릅니다.
-
-
[확인] 창에서 확인을 누릅니다.
SCORES_EVAL_FK라는 외래 키 제약 조건은EVALUATIONS테이블의EVALUTION_ID열을 참조하는SCORES테이블의EVALUTION_ID열에 추가됩니다.다음 단계에서는
SCORES테이블에 다른 외래 키 제약 조건을 추가합니다. -
테이블 목록에서 SCORES를 마우스 오른쪽 버튼으로 누릅니다.
-
테이블 목록에서 제약 조건을 선택합니다.
-
선택 항목 목록에서 외래 키 추가를 누릅니다.
[외래 키 추가] 창이 열립니다.
-
Add Foreign Key window에서 다음을 수행합니다.
-
[제약 조건 이름]에
SCORES_PERF_FK를 입력합니다. -
[열 이름]의 경우 메뉴에서 PERFORMANCE_ID를 선택합니다.
-
[참조 테이블 이름]의 경우 메뉴에서 PERFORMANCE_PARTS를 선택합니다.
-
참조 열의 경우 메뉴에서 PERFORMANCE_ID를 선택합니다.
-
적용을 누릅니다.
-
-
[확인] 창에서 확인을 누릅니다.
SCORES_PERF_FK라는 외래 키 제약 조건은EVALUATIONS테이블의EVALUTION_ID열을 참조하는SCORES테이블의EVALUTION_ID열에 추가됩니다.
다음 프로시저에서는 ALTER TABLE 문을 사용하여 EMPLOYEES 테이블의 EMPLOYEE_ID 열을 참조하는 외래 키 제약 조건을 EVALUATIONS 테이블의 EMPLOYEE_ID 열에 추가합니다.
ALTER TABLE 문을 사용하여 외래 키 제약 조건을 추가하는 단계:
-
hr_conn 탭이 있는 창이 있는 경우 선택합니다. 그렇지 않은 경우 "SQL Developer에서 질의 실행"에서와 같이 SQL 워크시트 아이콘을 누릅니다.
-
[워크시트] 창에서 다음 명령문을 입력합니다.
ALTER TABLE EVALUATIONS ADD CONSTRAINT EVAL_EMP_ID_FK FOREIGN KEY (EMPLOYEE_ID) REFERENCES EMPLOYEES (EMPLOYEE_ID); -
명령문 실행 아이콘을 누릅니다.
이 명령문이 실행되어
EVALUATIONS테이블의EMPLOYEE_ID열에 외래 키 제약 조건을 추가하여EMPLOYEES테이블의EMPLOYEE_ID열을 참조하는 명령문이 실행됩니다.
다음 프로시저에서는 확인 추가 툴을 사용하여 SCORES 테이블에 확인 제약 조건을 추가합니다.
확인 추가 툴을 사용하여 확인 제약 조건을 추가하는 단계는 다음과 같습니다.
-
Connections(연결) 프레임에서 hr_conn을 확장합니다.
-
스키마 객체 유형 목록에서 테이블을 확장합니다.
-
테이블 목록에서 SCORES를 마우스 오른쪽 버튼으로 누릅니다.
-
선택 항목 목록에서 제약 조건을 선택합니다.
-
선택 항목 목록에서 확인 추가를 누릅니다.
-
계산서 추가 창에서 다음을 수행합니다.
-
[제약 조건 이름]에
SCORE_VALID를 입력합니다. -
Check Condition에
score >= 0 and score <+ 9를 입력합니다. -
[상태]에서 기본값인
ENABLE을 적용합니다. -
적용을 누릅니다.
-
-
[확인] 창에서 확인을 누릅니다.
SCORE_VALID라는 확인 제한 조건이SCORES테이블에 추가됩니다.
참조:
-
ALTER TABLE 문에 대한 자세한 내용은 Oracle Database SQL Language Reference를 참조하십시오
-
SQL Developer로 제약 조건을 생성할 때 테이블에 제약 조건 추가에 대한 자세한 내용은 Oracle SQL Developer User's Guide를 참조하십시오.
-
CREATE TABLE 문으로 제약 조건을 생성할 때 테이블에 제약 조건을 추가하는 방법은 Oracle Database SQL Language Reference를 참조하십시오.
자습서: 행 삽입 툴을 사용하여 테이블에 행 추가
이 자습서에서는 행 삽입 툴을 사용하여 PERFORMANCE_PARTS 테이블에 6개의 채워진 행을 추가하는 방법을 보여 줍니다.
행 삽입 툴을 사용하여 PERFORMANCE_PARTS 테이블에 행을 추가하는 단계는 다음과 같습니다.
-
Connections 프레임에서 hr_conn을 확장합니다.
-
스키마 객체 유형 목록에서 테이블을 확장합니다.
-
테이블 목록에서 PERFORMANCE_PARTS를 선택합니다.
-
오른쪽 프레임에서 데이터 탭을 누릅니다.
[데이터] 창이 나타나고 PERFORMANCE_PARTS 테이블의 열 이름이 표시되고 행은 표시되지 않습니다.
-
[데이터] 창에서 행 삽입 아이콘을 누릅니다.
빈 열을 포함하는 새 행이 나타납니다. 행 번호 주위의 녹색 테두리는 삽입이 커밋되지 않았음을 나타냅니다.
-
열 머리글 PERFORMANCE_ID 아래의 셀을 누릅니다.
-
PERFORMANCE_ID의 값을 입력합니다.
WM -
Tab 키를 누르거나 열 머리글 NAME 아래의 셀을 누릅니다.
-
NAME 값을 입력합니다.
Workload Management -
Tab 키를 누르거나 열 머리글 WEIGHT 아래의 셀을 누릅니다.
-
WEIGHT 값을 입력합니다.
0.2 -
Enter 키를 누릅니다.
-
단계 5 - 12를 반복하여 두번째 행을 추가하고 다음 값으로 채웁니다.
-
PERFORMANCE_ID의 경우
BR를 입력합니다. -
NAME에
Building Relationships를 입력합니다. -
WEIGHT의 경우
0.2를 입력합니다.
-
-
단계 5 - 12를 반복하여 세번째 행을 추가하고 다음 값으로 채웁니다.
-
PERFORMANCE_ID의 경우
CF를 입력합니다. -
NAME에
Customer Focus를 입력합니다. -
WEIGHT의 경우
0.2를 입력합니다.
-
-
단계 5 - 12를 반복하여 네번째 행을 추가하고 다음 값으로 채웁니다.
-
PERFORMANCE_ID의 경우
CM를 입력합니다. -
NAME에
Communication을 입력합니다. -
WEIGHT의 경우
0.2를 입력합니다.
-
-
단계 5 - 12를 반복하여 다섯번째 행을 추가하고 다음 값으로 채웁니다.
-
PERFORMANCE_ID의 경우
TW를 입력합니다. -
NAME에
Teamwork를 입력합니다. -
WEIGHT의 경우
0.2를 입력합니다.
-
-
단계 5 - 12를 반복하여 여섯번째 행을 추가하고 다음 값으로 채웁니다.
-
PERFORMANCE_ID의 경우
RO를 입력합니다. -
NAME에
Results Orientation을 입력합니다. -
WEIGHT의 경우
0.2를 입력합니다.
-
-
변경 사항 커밋 아이콘을 누릅니다.
행 번호 주위의 녹색 테두리가 사라집니다.
데이터 창 아래에는 메시지 - 로그라는 레이블이 있습니다.
-
메시지 - 로그 창에서
Commit Successful메시지를 확인합니다. -
Data Pane에서 새 행을 확인합니다.
참조: "INSERT 문 정보"
자습서: 데이터 창에서 테이블의 데이터 변경
이 자습서에서는 데이터 창에서 PERFORMANCE_PARTS 테이블의 WEIGHT 값 중 세 개를 변경하는 방법을 보여줍니다.
PERFORMANCE_PARTS 테이블은 "Tutorial: Adding Rows to Tables with the Insert Row Tool"에서 채워졌습니다.
[데이터] 창을 사용하여 PERFORMANCE_PARTS 테이블의 데이터를 변경하는 단계:
-
Connections(연결) 프레임에서 hr_conn을 확장합니다.
-
스키마 객체 유형 목록에서 테이블을 확장합니다.
-
테이블 목록에서 PERFORMANCE_PARTS를 선택합니다.
-
오른쪽 프레임에서 데이터 탭을 누릅니다.
-
Data Pane에서 NAME이 "Workload Management"인 행에 다음이 포함됩니다.
-
WEIGHT 값을 누릅니다.
-
값
0.3를 입력합니다. -
Enter 키를 누릅니다.
행 번호 왼쪽에는 변경 사항이 커밋되지 않았음을 나타내는 별표가 표시됩니다.
-
-
NAME이 "Building Relationships"인 행에서는 다음을 수행합니다.
-
WEIGHT 값을 누릅니다.
-
0.15값을 입력합니다. -
Enter 키를 누릅니다.
행 번호 왼쪽에는 변경 사항이 커밋되지 않았음을 나타내는 별표가 표시됩니다.
-
-
NAME이 "Customer Focus"인 행에서 다음을 수행합니다.
-
WEIGHT 값을 누릅니다.
-
0.15값을 입력합니다. -
Enter 키를 누릅니다.
행 번호 왼쪽에는 변경 사항이 커밋되지 않았음을 나타내는 별표가 표시됩니다.
-
-
변경 사항 커밋 아이콘을 누릅니다.
행 번호 왼쪽의 별표가 사라집니다.
-
데이터 창에서 메시지 - 로그 창에서
Commit Successful메시지를 확인합니다. -
Data Pane에서 새 데이터를 확인합니다.
참조: "UPDATE 문 정보"
자습서: 선택한 행 삭제 툴을 사용하여 테이블에서 행 삭제
이 자습서에서는 PERFORMANCE_PARTS 테이블에서 행을 삭제하는 데 [선택한 행 삭제] 툴을 사용하는 방법을 보여줍니다.
PERFORMANCE_PARTS 테이블은 "Tutorial: Adding Rows to Tables with the Insert Row Tool"에서 채워졌습니다.
선택한 행 삭제 툴을 사용하여 PERFORMANCE_PARTS에서 행을 삭제하는 단계:
-
Connections(연결) 프레임에서 hr_conn을 확장합니다.
-
스키마 객체 유형 목록에서 테이블을 확장합니다.
-
테이블 목록에서 PERFORMANCE_PARTS를 선택합니다.
-
오른쪽 프레임에서 데이터 탭을 누릅니다.
-
Data 창에서 NAME이 "Results Orientation"인 행을 클릭합니다.
-
선택한 행 삭제 아이콘을 누릅니다.
행 번호 주위에 빨간색 테두리가 나타나 삭제가 커밋되지 않았음을 나타냅니다.
-
변경 사항 커밋 아이콘을 누릅니다.
행이 삭제됩니다.
-
데이터 창에서 메시지 - 로그 창에서
Commit Successful메시지를 확인합니다.
주: 테이블의 모든 행을 삭제해도 빈 테이블이 계속 남습니다. 테이블을 삭제하려면 "테이블 삭제"를 참조하십시오.
참조: "DELETE 문 정보"
인덱스 관리
테이블의 열 하나 이상에 인덱스를 생성하여 해당 테이블에 대한 SQL 문 실행 속도를 늘릴 수 있습니다. 인덱스는 적절히 사용할 경우 디스크 입/출력(I/O)을 줄일 수 있는 주요 수단입니다.
테이블에서 기본 키를 정의하는 경우:
-
기존 인덱스가 기본 키 열로 시작하는 경우 Oracle Database는 기본 키에 대해 기존 인덱스를 사용합니다. 기존 인덱스는 고유할 필요가 없습니다.
예를 들어, 기본 키(A, B)를 정의할 경우 Oracle Database는 기존 인덱스(A, B, C)를 사용합니다.
-
기본 키 열로 시작하는 기존 인덱스가 없고 제약 조건이 즉시 실행되면 Oracle Database는 기본 키에 고유 인덱스를 생성합니다.
-
기본 키 열로 시작하는 기존 인덱스가 없고 제약 조건이 deferrable인 경우 Oracle Database는 기본 키에 비고유 인덱스를 생성합니다.
예를 들어, "자습서: 기존 테이블의 제약 조건 추가"에서는 EVALUATIONS 테이블의 EVALUATION_ID 열에 기본 키 제약 조건을 추가했습니다. 따라서 SQL Developer Connections 프레임에서 EVALUATIONS 테이블을 선택하고 인덱스 탭을 누르면 [인덱스] 창에 EVALUATION_ID 열의 고유 인덱스가 표시됩니다.
자습서: 인덱스 생성 툴을 사용하여 인덱스 추가
이 자습서에서는 인덱스 생성 툴을 사용하여 EVALUATIONS 테이블에 인덱스를 추가하는 방법을 보여줍니다.
EVALUATIONS 테이블은 Example 4-1에서 만들어졌습니다.
인덱스를 생성하려면 SQL Developer 툴 인덱스 생성이나 DDL 문 CREATE INDEX를 사용합니다. 이에 상응하는 DDL 문은 다음과 같습니다.
CREATE INDEX EVAL_JOB_IX
ON EVALUATIONS (JOB_ID ASC) NOPARALLEL;
인덱스 생성 툴을 사용하여 EVALUATIONS 테이블에 인덱스가 추가되는 단계:
-
Connections(연결) 프레임에서 hr_conn을 확장합니다.
-
스키마 객체 유형 목록에서 테이블을 확장합니다.
-
테이블 목록에서 진행을 마우스 오른쪽 버튼으로 누릅니다.
-
선택 항목 목록에서 색인을 선택합니다.
-
선택 항목 목록에서 인덱스 생성을 선택합니다.
-
Create Index window에서 다음을 수행합니다.
-
[스키마]의 경우 기본값 HR을 사용합니다.
-
[이름]에
EVAL_JOB_IX를 입력합니다. -
[정의] 창이 표시되지 않으면 정의 탭을 선택합니다.
-
[정의] 창의 [인덱스 유형]에 대해 메뉴에서 고유를 선택합니다.
-
표현식 추가 아이콘을 누릅니다.
순서가 <지정되지 않음>인 표현식 EMPLOYEE_ID가 나타납니다.
-
EMPLOYEE_ID에
JOB_ID를 입력합니다. -
Order의 경우 메뉴에서 ASC(오름차순)를 선택합니다.
-
확인을 누릅니다.
이제 EVALUATIONS 테이블의 JOB_ID 열에 EVAL_JOB_IX라는 인덱스가 있습니다.
-
참조: CREATE INDEXstatement에 대한 자세한 내용은 Oracle Database SQL Language Reference
자습서: 인덱스 편집 툴을 사용하여 인덱스 변경
이 자습서에서는 인덱스 편집 툴을 사용하여 EVAL_JOB_IX 인덱스의 정렬 순서를 반대로하는 방법을 보여 줍니다.
인덱스를 변경하려면 SQL Developer 툴 인덱스 편집이나 DDL 문 DROP INDEX 및 CREATE INDEX를 사용합니다.
이에 상응하는 DDL 문은 다음과 같습니다.
DROP INDEX EVAL_JOB_ID;
CREATE INDEX EVAL_JOB_IX
ON EVALUATIONS (JOB_ID DESC) NOPARALLEL;
인덱스 편집 툴을 사용하여 EVAL_JOB_IX 인덱스의 정렬 순서를 반대로 하려면 다음과 같이 합니다.
-
Connections(연결) 프레임에서 hr_conn을 확장합니다.
-
스키마 객체 유형 목록에서 인덱스를 확장합니다.
-
인덱스 목록에서 EVAL_JOB_IX를 마우스 오른쪽 버튼으로 누릅니다.
-
선택 항목 목록에서 편집을 누릅니다.
-
[인덱스 편집] 창에서 순서를 DESC로 변경합니다.
-
확인을 누릅니다.
-
[바꾸기 확인] 창에서 예 또는 아니오를 누릅니다.
참조: ALTER INDEX 문에 대한 자세한 내용은 Oracle Database SQL Language Reference
자습서: 인덱스 삭제
이 자습서에서는 접속 프레임 및 삭제 툴을 사용하여 EVAL_JOB_IX 인덱스를 삭제하는 방법을 보여 줍니다.
인덱스를 삭제하려면 SQL Developer Connections 프레임 및 삭제 툴이나 DDL 문 DROP INDEX를 사용합니다 이에 상응하는 DDL 문은 다음과 같습니다.
DROP INDEX EVAL_JOB_ID;
EVAL_JOB_IX 인덱스를 삭제하려면 다음과 같이 하십시오.
-
Connections(연결) 프레임에서 hr_conn을 확장합니다.
-
스키마 객체 유형 목록에서 인덱스를 확장합니다.
-
인덱스 목록에서 EVAL_JOB_IX를 마우스 오른쪽 버튼으로 누릅니다.
-
선택 항목 목록에서 삭제를 누릅니다.
-
[삭제] 창에서 적용을 누릅니다.
-
[확인] 창에서 확인을 누릅니다.
참조: Oracle Database SQL Language Reference에서 DROP INDEX 문에 대한 자세한 내용을 참조하십시오.
테이블 삭제
테이블을 삭제하려면 SQL Developer Connections 프레임 및 끌어 놓기 툴 또는 DDL 문 DROP TABLE을 사용합니다.
주의: "테이블 생성"에서 생성한 테이블은 나중에 자습서에서 필요하므로 삭제하지 마십시오. 테이블 삭제를 연습하려면 간단한 테이블을 생성한 다음 삭제합니다.
삭제 툴을 사용하여 테이블을 삭제하는 단계:
-
Connections(연결) 프레임에서 hr_conn을 확장합니다.
-
스키마 객체 유형 목록에서 테이블을 확장합니다.
-
테이블 리스트에서 삭제할 테이블의 이름을 마우스 오른쪽 버튼으로 누릅니다.
-
선택 항목 목록에서 테이블을 선택합니다.
-
선택 항목 목록에서 삭제를 누릅니다.
-
[삭제] 창에서 적용을 누릅니다.
-
[확인] 창에서 확인을 누릅니다.
참조: DROP TABLE 문에 대한 자세한 내용은 Oracle Database SQL Language Reference를 참조하십시오.