yunsh206

회원가입로그인
음... DB의 모델링 얘기를 아는 사람들에게는 너무나도 뻔한 얘기. 모르는 사람들에게는

봉창 두드리는 것과 같은 딱딱한 얘기.

기존의 내 자료실의 구조는 아래와 같았었다.

pds_erd1.gif

한 마디로, 파일 개수가 테이블의 레이아웃에 의해서 결정되었다는 거지.

첨부 파일 개수가 모자라서 더 늘리려고 하면 위에 표시된 그림에 첨부파일8, 9, 10

이런 식으로 더 추가시켜야 한다는 건데...

그건 테이블의 레이아웃 혹은 구조 자체를 바꿔야 하게 되는 거였지. 한 마디로

완전 왕무식에 RDB의 장점을 살리지 못한 구조였다고나 할까. (물론 속도는

빠를 수 있다만, 내 홈피에 사람이 몇 명이나 온다고. ^_^)

그래서 아래와 같은 구조로 바꾸었다.

pds_erd2.gif

뭐 결과적으로 리플과 같은 구조로 바뀐 거지.

글 내용과 첨부파일을 담는 테이블을 따로 분리한 후에 첨부파일 테이블에 원래글이

뭐라는 정보만 넣어준 후에 레코드를 늘리는 식으로 바꿔버린 거지.

흠...

이해안되는 사람들을 위해서리...

성적표가 있을 때...

표를 어떻게 구성하느냐에 따른 얘기로 보면 된다.
__________________________________
|이름 |1월 성적 | 2월성적 | 3월성적|
----------------------------------
홍길동, 30점, 20점, 30점
안중근, 100점, 90점, 90점...

이런 식으로 구성된 표에서 4월 성적을 만들려면?

표에 오른쪽 칸을 추가하고는 4월 성적칸이라고 명명해줘야 한다. 즉 표의 구조가

바뀌는 거지.

_____________________________________________
|이름    |1월 성적 | 2월성적 | 3월성적 | 4월성적|
---------------------------------------------
|홍길동 | 30점     | 20점      | 30점     |    20점  |
---------------------------------------------
|안중근 | 100점   |90점       | 90점     |    30점   |
---------------------------------------------

그걸 나는...

회원명부
______________
| 번호 | 이름  |
______________
|1     | 안중근|
|2     | 홍길동|
--------------

성적표
_____________________
|번호    |월    | 점수  |
---------------------
| 1       | 1     | 100   |
---------------------
| 1       | 2     |  90   |
---------------------
| 1       | 3     |  80   |
---------------------
| 1       | 4     | 100   |
---------------------
| 1       | 5     | 100   |
---------------------
| 2       | 1     | 100   |
---------------------
| 2       | 2     | 100   |
---------------------
| 2       | 3     | 100   |
---------------------
| 2       | 4     | 100   |
---------------------
| 2       | 5     | 100   |
---------------------


식으로 바꾼다는 얘기... 그러면 테이블의 컬럼 (열) 숫자는 전혀 바뀌지 않고

데이터의 개수 (Row)만 늘어나면 된다는 장점을 가지게 되는 거지.

그렇게 함으로써 난 상황에 따라서 첨부파일의 개수를 이론상으로는 무한대로 늘릴

수 있게 된다는 말쌈...

제로보드는 전자의 입장을 취하므로 2개까지가 제한되어 있어서 DB 구조 자체를

바꾸지 않는 한 힘들게 되어 있다고 할 수 있겠지.

But... 많은 사람들이 다녀가는 사이트에서 저 방식을 취하게 되면 속도가 장난아니게

떨어질 뿐더러, 거기에 파일의 용량감당이 안됨으로 인해서 사고가 날 가능성이 농후한

구조이기도 하다. 제로보드도 피치못해서 그 스타일로 나가기로 한 듯이 보인다.
번호 제목 글쓴이 날짜 조회 수 추천 수
835 리눅스 새 하드 장착하기 RanomA 2021.12.01 598 0
834 리눅스 SSH Network error: Software caused connection abort RanomA 2021.05.29 2016 0
833 인터넷 기본 설정 복원 창 띄우는 방법들 file RanomA 2021.05.01 1021 0
832 리눅스 디렉토리별 압축 파일 생성 쉘 스크립트 RanomA 2021.04.04 829 0
831 Javascript 숫자에 끊어 읽기 컴마(,) 추가 RanomA 2020.11.27 750 0
830 Javascript 문자열을 포맷 맞춰 날짜로, 날짜를 포맷 맞춘 문자열로 변환 RanomA 2020.11.26 717 0
829 Javascript 날짜 더하기 RanomA 2020.11.26 449 0
828 Javascript 해당 연월의 마지막 날짜 가져오기 RanomA 2020.11.25 363 0
827 Javascript isNullOrEmpty RanomA 2020.11.25 684 0
826 Javascript 전화번호 포매팅 RanomA 2020.11.25 2307 0
825 Javascript IN RanomA 2020.11.18 259 0
824 Javascript LPAD RanomA 2020.11.17 580 0
823 Adobe Creative Cloud 업데이트 실패 184(혹은 C184) 오류 file RanomA 2020.09.08 1068 0
822 오라클 테이블 레이아웃 조회 Query RanomA 2020.01.13 2062 0
821 SQL Developer의 폰트 설정에서 폰트 목록이 안나타날 때 [6] file RanomA 2019.12.30 4868 0
820 Underscore( _ 문자)를 카멜 케이스(Camel Case)로 변환하기 RanomA 2019.12.06 1813 0
819 라이트룸(Adobe Lightroom) 한자/일본어용 폰트 변경 file RanomA 2018.06.06 2140 0
818 마녀의 빗자루와 악마와의 파티 RanomA 2018.03.23 889 0
817 크레인 안전 점검이 허술해진 게 이명박 때가 아니다? RanomA 2018.01.06 707 0
816 인도 중국의 분쟁 지역 file RanomA 2017.08.17 1291 0