* Youtube Link - https://www.youtube.com/watch?v=dI_tFgM0WH0&list=PLVsNizTWUw7FzFgU1qe-n7_M7eMFA9d-f&index=9
데이터베이스 모델링이란
데이터베이스 모델링이란 건축물의 설계도와 같다.
프로젝트란
현실세계의 업무를 컴퓨터 시스템으로 옮겨놓는 일련의 과정
폭포수 모델
폭포가 떨어지듯이 각 단계가 끝나면 다음 단계로 진행하는 것
데이터베이스 모델링
폭포수 모델의 업무 분석과 시스템 설계 부분에 들어간다.
현실에서 쓰이는 것을 테이블로 만든다.
현실세계 - 진열된 물건, 직원, 고객이 쇼핑몰을 운영한다.
이를 데이터베이스의 테이블로 만든다.
또한 행위 자체도 테이블로 만들 수 있다.
모델링도 별도의 책이 따로 있다.
이를 공부하면 좋다.
이렇게 L자형 테이블은 필요가 없어서 공간의 낭비가 된다.
그래서 분리하려고 한다.
그래서 테이블을 나누었다.
그리고 구매 테이블에 PK를 추가해준다.
주키와 기본키라 부른다.
외래키라 부른다.
김범수가 여러번 구매를 할 수 있다.
이러한 경우 1:N 관게라고 합니다.
그리고 테이블을 설계한다.
SQL Developer의 Data Modeler 툴을 사용하겠다.
보기 > Data Modeler > 브라우저를 선택한다.
보기 브라우저를 확대하여 사용한다.
제목 없음을 우클릭 해서 먼저 디자인을 저장한다.
모델 저장
우리가 주로 사용하는 것은 관계형 모델이다.
우클릭하여 표시를 선택하면 볼 수 있다.
테이블 버튼을 누르면 테이블을 만들 수 있다.
이름을 userTBL로 입력하고 적용을 클릭한다.
열에서 이름, 데이터 유형, 소스 유형, 크기 그리고 PK 또는 FK 여부를 선택하여
적용 버튼을 선택하여 열을 추가한다.
그리고 확인을 선택한다.
표 4-2에 나온 것 그대로 표가 나오는 것을 볼 수 있다.
이렇게 테이블을 두개 만들었다.
그리고 열쇠키와 초록색 선을 선택을 하고
PK 테이블을 선택하고
FK 테이블을 선택하고
판별자열에 userName을 선택을 하고
연관된 열에서 확인을 하고
확인을 선택을 하면
다음과 같이 표 간의 PK 관계가 형성된 것을 볼 수 있다.
표를 우클릭하여 DDL 미리보기를 선택을 하면
다음과 같이 DDL문을 미리 볼 수 있다.
DDL 미리보기 창을 닫기를 선택을 한다.
그리고 DDL 생성을 클릭을 하면
생성을 선택을 하면
그리고 전제를 선택하고
확인을 선택을 하면
생성했던 표들 그 화면 전체를
DDL문으로 만들 수 있다.
저장을 선택하여 저장한다.
C:\모델링\modelSchema.ddl로 저장한다.
SYSTEM에 접속 후
SYSTEM에서 다른 사용자를 우클릭하고
사용자 생성을 선택한다.
사용자 이름: Model
새 비밀번호: 1234
비밀번호 확인: 1234
기본 테이블 스페이스: USERS
임시 테이블 스페이스: TEMP
부여된 롤 탭에서
기본 롤인
CONNECT, RESOURCE를 선택한다.
할당량 탭에서
할당량: 10
단위: m
을 입력하고
적용을 선택하여
Model 사용자를 생성한다.
다음과 같이 Model 사용자가 만들어졌다.
접속을 해야 할 차례다.
로컬-Model 접속을 새로 생성한다.
저장을 선택하고 접속을 선택하여 접속한다.
파일 > 열기 를 선택한다.
그리고 C:\모델링\modelSchema.ddl 을 선택한다.
열기를 선택한다.
modelSchema.ddl 파일을 열고
우측에서 db 버튼을 클릭하고
적용할 db를 선택한다.
우리는 로컬-Model을 선택할 것이다.
그리고 스크립트 전체를 실행할 때는
스크립트 실행 버튼을 선택한다.
로컬-Model 스키마에 테이블들이 생성된 것을 확인할 수 있다.
이번에는 스키마에 있는 테이블들을 다른 스키마에서 가져오려고 한다.
파일 > Data Modeler > 임포트 > 데이터 딕셔너리를 선택한다.
데이터 딕셔너리를 가져오는 것이다.
우리가 만든 접속을 선택하고 다음
스키마 데이터베이스 SHOP을 선택하고 다음
임포트할 객체를 선택한다.
테이블, 뷰, 내장 프로시저 등
SHOP에 있는 객체들을 선택해서 가져온다.
데이터베이스 이름 그리고 데이터베이스 버전을 확인하고
임포트할 DB 객체를 확인한 다음
완료를 선택하여 디자인을 생성한다.
임포트할 모델과 기존의 모델을 비교한다.
병합을 선택을 하면
두 모델이 합쳐진다.
데이터 모델링을 연습해봤다.
상당히 할 것이 많고 경험도 많이 필요하다.
감사합니다.
'Oracle' 카테고리의 다른 글
[이것이 오라클이다] 05장 02교시: [Oracle] 외부 Oracle 접속, 사용자 관리 (0) | 2024.11.03 |
---|---|
[이것이 오라클이다] 05장 1교시: [Oracle] SQL Developer, SQL*Plus 사용법 (2) | 2024.11.02 |
[이것이 오라클이다] 03장 4교시: [Oracle] 데이터 백업 및 복원, 응용 프로그램과 연결 (0) | 2024.11.01 |
[이것이 오라클이다] 03장 3교시: [Oracle] 테이블 외의 데이터베이스 개체 (1) | 2024.11.01 |
[이것이 오라클이다] 03장 02교시: [Oracle] 테이블 생성, 데이터 입력, 데이터 조회 (0) | 2024.11.01 |