드로우홀릭 더베이직

안녕하세요.

궁금한 것이 있어 문의드립니다.

예를들면, 임의의 테이블에 위치라는 필드가 있습니다.

여기서 1번 레코드에 값을 넣고 싶은데, 이때 값이 단일 값이 아니라, x/y/z 방향의 값 3개를 (10,5,8) 위치 필드에 넣고 싶은데 가능할까요?

필드를 위치x, 위치y, 위치z 이렇게 3개 만들어서 값을 넣는 방법이 맞을지 아니면 다른 방법이 있을지 궁금합니다.

위 예는 값이 고정된 갯수라 아는 상태인데 만약 값이 좀 긴 경우(1,2,3,4,5,6,7,8,9.... 또는 1D 룩업테이블 비슷) 는 필드에 어떻게 넣을 수 있을까요?

 

 


profile

돌직구

2024.05.02 09:18:10
*.38.65.95

일단, 비즈니스 로직을 설명해 주지 않으셔서, 정확한 답변이 어렵다는 것을 양해해 주십시오.

일단, 값 3개를 한 필드에 입력하는 것은 전혀 권장하지 않습니다.
그 값을 사용하려면 다시 분리해야 하기 때문입니다.
그럼에도 불구하고 반드시 그렇게 해야겠다면, 나름의 규칙을 만들어서 저장하면 됩니다.
x/y/z
x|y|z
어떤 것이든 좋습니다.

여기에 더해서 값이 길다면, 이런 방식으로 해도 되겠습니다만..
원칙적으로 테이블을 분리하는 것이 맞습니다.

비즈니스 로직을 가정해 보겠습니다.
어떤 제품 A를 생산하는데, 부품들이 a, b, c가 있다고 가정해 보겠습니다.
제품 B는 부품이 a, b, c, d, e가 있을 수 있겠죠. (하위 부품의 수는 N개라는 의미입니다.)
이것을 말씀하신 대로 다음과 같은 테이블 구조를 갖게 할 수 있습니다.

품목코드 품목명 단가 하위부품
A 품목1 3000 a,b,c

 

그러나 앞서 말씀드린 대로, 이것은 전혀 권장하지 않습니다.
저라면 다음과 같이 '품목' 테이블과 '부품구성' 테이블로 나누어 저장하겠습니다.

먼저 '품목' 테이블입니다.

품목코드 품목명 단가
A 품목1 3000

 

그 다음은 '부품구성' 테이블입니다.

부품구성코드 품목코드 부품
1 A a
2 A b
3 A c

 

'부품구성코드'는 '부품구성' 테이블의 기본키 입니다.
각 행이 어떤 '품목'과 연관된 데이터인지 표시하기 위해 '품목코드'를 같이 기록해 놓는 것입니다.
이런 방식이 정석에 가까운 방식이긴 합니다.

하지만, 비즈니스 로직을 모르기에, 확실한 것은 아닙니다.
비즈니스 로직에 따라, 'a/b/c' 식으로 저장하는 것이 나을 수도 있습니다. (확률은 희박하지만)

 

Piesun

2024.05.02 15:34:55
*.87.60.233

감사합니다. 

내용을 참고해 여러 방법으로 시도해보고 있습니다. 

비즈니스 로직보다는 시스템이 가져야할 파라미터, 예를 들면, 자동차의 중량은 1개의 값을 가지며, 차량의 위치는 x,y,z 3개의 위치값을 가지는 경우에 대해 파라미터에 대한 DB를 검토하고 있습니다.

각 파라미터가 갖는 값의 갯수가 가변적이라 이것을 어떻게 관리할 수 있는 테이블을 만드느냐 고민중에 있습니다. 일정부분 검토한 후에 튜터링 서비스를 통해 재검토할 예정입니다.

감사합니다.

profile

돌직구

2024.05.03 09:21:25
*.38.65.95

지금 말씀해 주신 것이 비즈니스 로직에 해당됩니다.
위치값이라면 '연산'이 필요하겠네요. 그렇다면 개별 필드로 하는 것이 좋아 보입니다.

그런데 앞서서 몇 개인지 확신할 수 없는 필드가 있다고 하셨잖아요?
이것은 어떤 용도의 필드입니까?
하나의 필드로 할 지, 여러 개의 필드로 할 지 판단하기 어렵습니다.
결국 용도를 알아야 판단할 수 있습니다.

Piesun

2024.05.05 01:35:36
*.87.60.233

시스템의 파라미터를 관리/입력하기 위해 데이터 모델링을 검토하고 있습니다.

차량 시스템에서 단일값을 갖는 파라미터 이외, 1D loopup table로 값을 갖는 파라미터가 있습니다. 파라미터에 따라 20~ 500 개 까지 값을 갖는 행렬(1byX 또는 Xby1)로 볼 수 있겠네요. 이런 경우에 파라미터 값이라는 필드에 단일값은 쉽게 입력이 가능하겠지만 서로다른 행렬 길이를 갖는 파라미터는 값필드에 어떻게 저장할지가 고민입니다.

 

추가로 폼에서 데이터를 입력할때, 입력칸에 표시되는 값들을 보이지 않게 디폴트로 할 수 있는 방법이 있나요? 저만 궁금한건지 모르겠네요. 폼을 만들고 데이터를 입력할때 기존 데이터들이 표시되어 있어 헷갈리지 않을까 하는 생각을 계속하고 있습니다.   

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 FAQ: 어떤 과정을 수강하는 것이 좋을까요? 외 돌직구 2017-08-29 140225
공지 좋은 답변을 이끌어 내는 방법 [1] 돌직구 2017-07-14 157397
공지 액세스 Q/A 게시판 형식을 변경합니다. 돌직구 2014-09-10 139897


  주소  12925 경기도 하남시 미사대로 540, B동 917호 (현대지식산업센터 한강미사2차) ㈜팀데이터이십일  |  고객센터 전화번호  02-467-2998  |  대표이사  염기웅
개인정보관리책임자  염기웅 ([email protected])  |  사업자등록번호  120-86-79260  |  통신판매업신고번호  제 2021-경기하남-1166 호  [사업자 정보 확인]
  TD21의 사전 서면 동의 없이 TD21 사이트 일체의 정보, 콘텐츠 및 UI 등을 상업적 목적으로 전시, 전송, 스크래핑 등 무단 사용할 수 없습니다.

Close