
Oracle Database에서 Oracle Database 21C를 다운로드 한다.

setup.exe 파일을 실행한다.

명령 프롬프트에 sqlplus "/as sysdba"를 입력하여 SQL *Plus로 연결한다. 그리고 실습용 사용자 계정을 생성한다.
CREATE USER [USER_ID] IDENTIFIED BY [PASSWORD];
GRANT CONNECT, RESOURCE, DBA TO [USER_ID];

SQL Developer에서 Windows 64-bit with JDK 17 included를 다운로드 한다. 그리고 sqldeveloper.exe 파일을 실행한다.

[새 연결]을 클릭한 후 이전에 생성했던 사용자 이름과 비밀번호를 입력한다. [테스트]와 [접속]을 클릭하여 접속 상태를 확인한다.
현실 세계에서 관찰하거나 측정하여 수집한 사실과 값으로, 가공되지 않는 원천(raw) 정보이다.
데이터를 체계적으로 저장, 관리, 검색하기 위한 시스템으로, 정보의 집합이다.
데이터베이스는 데이터를 2차원의 테이블 형태로 표현한 것으로, 테이블을 담는 그릇이다.
데이터를 테이블 형식으로 저장한다. 행(Row)과 열(Column) 구조이며 데이터 간의 관게를 명확히 정의한다. SQL을 사용하여 데이터를 관리한다.
구성 요소는 다음과 같다.
실제로 Foreign Key는 조건에 따라 에러가 나는 경우가 많기 때문에, 적극적으로 사용하지는 않는다.
데이터를 구조화하여 현실 세계의 정보를 데이터베이스에 표현하는 과정이다. 시스템의 효율성과 무결성을 확보하기 위한 핵심 단계이다.
UNIQUE, NOT NULL, CHECK.PK(Primary Key) : 중복과 NULL 값을 허용하지 않는다.
UK(Unique Key) : 중복과 NULL 값을 허용한다.
데이터베이스 설계의 기초가 되는 다이어그램이다. 엔터티(Entity), 속성(Attribute), 관계(Relationship)를 활용하여 시각적으로 표현한다.

ERD 작성 도구는 다음과 같다.
| 도구 | 비용 | 사용성 | 협업 기능 | DB 연결 | 주요 사용 사례 |
|---|---|---|---|---|---|
| Lucidchart | 무료/유료 | 쉬움 | 강력 | 간접 지원 | 헙업 중심 모델링 |
| Draw.io | 무료 | 쉬움 | 기본적 | 없음 | 간단한 다이어그램 작성 |
| DB Designer | 무료/유료 | 쉬움 | 강력 | 다양한 DBMS 지원 | 팀 기반 설계 |
| ER/Studio | 유료 | 어려움 | 강력 | 다양한 DBMS 지원 | 대규모 엔터프라이즈 설계 |
관계의 필수/선택 여부는 마지막이다.
Draw.io에서 ERD를 그리면 다음과 같다.

ERD 리뷰
1. 공통코드 테이블을 활용한다. 코드와 코드값으로 구성된 다양한 코드들을 모아서 하나의 테이블에서 관리하며, 수많은 테이블과 JOIN 속성으로 연결되어 있다.
2. 고객 등급은 가변적이기 때문에 이에 대한 속성 처리도 추가적으로 필요하다.
3. 상품 또는 후기들을 볼 때는 Sequence를 설정한다.