티스토리 뷰

오라클 테이블 관리와 데이터 딕셔너리(효율적인 데이터베이스 운영)

Database

서론

데이터베이스는 현대 사회에서 핵심적인 자원으로 간주되며, 데이터베이스의 효율적인 운영은 중요한 과제 중 하나입니다. 이번 글에서는 데이터베이스의 테이블 관리와 데이터 딕셔너리의 역할 및 활용 방법에 대해 자세히 살펴보겠습니다.

테이블 생성과 관리

데이터베이스에서 테이블을 생성할 때는 몇 가지 규칙을 따라야 합니다. 테이블과 칼럼(필드) 이름은 문자로 시작하고 30자 이내여야 하며, 대소문자 구분이 있습니다. 테이블 생성은 CREATE TABLE 명령문을 사용하며, 기본값 설정도 가능합니다.

테이블 이름 생성 규칙

- 테이블과 칼럼 이름은 문자(A-Z a-z)로 시작하고 30자 이내로 가능하다. - 문자, 숫자, 특수문자(_, $, #)를 사용할 수 있다. - 테이블 이름은 대소문자를 구분하지 않지만, 데이터 딕셔너리에는 대문자로 저장된다. - 테이블 이름은 동일한 사용자가 소유한 다른 객체의 이름과 중복될 수 없다. - 서로 다른 테이블에서 동일한 데이터를 저장하는 칼럼 이름은 가능하면 같은 이름을 사용하는 것이 좋다. ```html

예시: CREATE TABLE address ( id NUMBER(3), name VARCHAR2(50), addr VARCHAR2(100), phone VARCHAR2(30), email VARCHAR2(100) );

```

서브쿼리를 이용한 테이블 생성

서브쿼리를 사용하여 다른 테이블의 구조를 복사하거나 선택적으로 칼럼을 포함하여 새로운 테이블을 생성할 수 있습니다. 서브쿼리를 사용하면 테이블 구조나 초기 데이터를 효율적으로 복사할 수 있습니다. ```html

예시: -- 주소록 테이블에 데이터 삽입 INSERT INTO address VALUES (1, 'HGDONG', 'SEOUL', '123-3456', 'gdhong@dbcore.net'); COMMIT; -- 서브쿼리를 이용하여 addr_second 테이블 생성 CREATE TABLE addr_second AS SELECT * FROM address;

```

테이블 이름 변경, 테이블 삭제(컬럼 추가, 수정, 삭제)

테이블을 변경하거나 삭제하기 위해 ALTER TABLE과 DROP TABLE을 사용합니다. 또한 칼럼을 추가, 변경, 삭제하여 테이블을 유연하게 관리할 수 있습니다. ```html

예시: -- 칼럼 추가 ALTER TABLE address ADD (birth DATE); -- 칼럼 삭제 ALTER TABLE address DROP COLUMN comments; -- 컬럼 변경, 주소록 테이블에서 phone 칼럼의 데이터 타입의 크기를 50으로 증가 ALTER TABLE address MODIFY phone VARCHAR2(50); -- 테이블 이름 변경 RENAME addr_second TO client_address; -- 테이블 삭제 DROP TABLE addr_third;

```

TRUNCATE 사용하기

TRUNCATE 명령은 테이블의 데이터와 할당된 공간을 삭제하고 테이블 구조는 그대로 유지합니다. 데이터를 복구할 수 없으므로 주의가 필요합니다. ```html

예시: -- 테이블 데이터 및 공간 삭제 TRUNCATE TABLE table명;

```

테이블, 컬럼(필드) 주석 추가하기

테이블이나 칼럼에 주석을 추가하여 해당 객체에 대한 설명을 제공할 수 있습니다. 주석은 데이터 딕셔너리를 통해 조회할 수 있습니다. ```html

예시: -- 테이블에 주석 추가 COMMENT ON TABLE table명 IS '코멘트 내용 입력'; -- 칼럼에 주석 추가 COMMENT ON COLUMN table.column명 IS '주석 내용 입력';

```

데이터 딕셔너리

데이터 딕셔너리는 데이터베이스 자원을 관리하기 위한 중요한 도구입니다. 데이터베이스 객체 및 권한 정보를 저장하며 데이터베이스 관리와 자원 관리에 사용됩니다.

데이터 딕셔너리의 역할</h 4> - 데이터베이스의 물리적 및 논리적 구조 관리 - 사용자, 객체, 권한 정보 관리 - 무결성 제약조건 및 객체 정보 저장 - 데이터베이스 객체에 대한 공간 관리 정보 저장 - 감사 정보 관리 - 데이터베이스 버전 및 인스턴스 정보 등 저장

데이터 딕셔너리의 종류

데이터 딕셔너리는 USER, ALL, DBA의 3가지 접두어를 가진 뷰로 구성됩니다. - USER_ 데이터 딕셔너리 뷰: 일반 사용자와 관련된 정보 조회 - ALL_ 데이터 딕셔너리 뷰: 모든 사용자와 관련된 정보 조회 (OWNER 칼럼 포함) - DBA_ 데이터 딕셔너리 뷰: 데이터베이스 관리와 관련된 정보 조회 (관리자 권한 필요) ```html

예시: -- USER_TABLES 뷰를 사용하여 테이블 정보 조회 SELECT table_name, tablespace_name, min_extents, max_extents FROM user_tables WHERE table_name LIKE 'ADDR%';

```

결론

이번 글에서는 데이터베이스 테이블의 생성, 관리, 및 데이터 딕셔너리에 대한 내용을 다루었습니다. 효율적인 데이터베이스 운영을 위해 테이블 관리 및 데이터 딕셔너리의 활용은 중요한 부분입니다. 데이터를 안전하고 효율적으로 관리하며 데이터베이스 자원을 최적화하는 것은 데이터베이스 관리자와 사용자에게 중요한 역할을 할 것입니다.

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함