안녕하세요?
오늘부로 델파이개발자의 가족이 된 정귭니다.
이 사이트를 알게되서 기쁘고 앞으로 서로 좋은 지식들을 나누고 배워갔으면 합니다.
델파이를 한지 얼마되지 않아서 많이 미숙하네요.
어줍잖은 질문이라도 귀 기울여주세요...
회원이 된 기념으로 질문하나 올립니다.
요즘 제가 주문관리 프로그램을 델파이로 해보고 있거든요.
물론 저 혼자서만... ^^
주문을 받으면 주문번호를 작성합니다.
그런데 전 주문번호를 날짜로 하려고 해요.
예를들면 2002년 1월 9일에 들어온거면 20020109 그리고 하루에 하나이상 들어올수 있으니깐 날짜에 + 01,02, 03.... 이렇게요.
그래서 저장필드의 데이터타입은 vc2로 해놨습니다.
그런데 날짜는 date타입이고, +01 이렇게 된 인덱스는 자동증가형으로 하나씩 증가합니다. +01,02,03... 이렇게요.
이것은 number(2)자리로 해놨거든요.
제 생각엔 일단 날짜를 변수에 담고(20020109) 그리고 +가 된 번호가 존재하지 않는다면 +1을 해서 앞에 0을 붙여서, +01을 하고 그걸 string으로 만들어서 최종적으로 20020109-01... 이렇게 된걸 string으로 또 변환을 해서 저장필드인 vc2에 넣으면 될거 같다는 막연히 초보적인 생각을 한답니다.
위와같이 할려면 어떤방법이 최선일까요?
저장루틴에 위와같은 코딩을 넣어보고 있거든요.
아직 결론이 안나왔지만... ^^
그런데 이걸 함수형태로도 만들어볼순 없을까요?
년월일+n 형태로 사용할수도 있지만 년월+n 의 형태로도 사용할수도 있으니깐요...
혹 위와같은 경험가지고 계신분...
제가 드린 두가지 질문에 관해 제게 조언을 좀 주시겠어요?
아직 이해력이 부족해서 예를들어서 설명해주심 더 감사하겠고요.
비록 저 혼자만들어보는, 프로그램 제작을 의뢰한 곳도 없고 실지로 제게 주문하는 고객도 없지만... -_-;;;...
끝내보고 싶네요...
제게 힘을... ^^
그럼 날이 좀 차졌는데 감기 조심하시고...
내일 부디 해결이 되길 빌면서...
안녕히계세요...
컴퓨터앞에 두달째 앉아서 끙끙대고 있는 어느 초보로부터...
당장은 어떻게 하는것이 좋은방법이라고 하기에는
시스템이 작기때문에 확연히 나타나지 않을겁니다.
정말 데이타가 많아지고 작업량이 많아진다면
시퀀스라든지 인덱스라든지 여러부분의 튜닝을 해야
겠지요.
저두 다음과 같이 생각합니다.
일자 + (MAX(serial_no of 일자)+1) 를
일자필드와 serial_no필드로 구분해서 관리하시는것이
좋지 않을까 합니다. 그래야 객체를 나눈다라든지
객체지향형으로 만들었다라는 빌미와 융통성이 있을테니까요
number(2)로 잡은것도 좋지만 갑자기 하루에 100건이상의
주문이 발생하면 어떻게 하나요? DB는 최적화도 좋지만
얼마나 사용할것인지와 항상 여유분의 Free Space를 가지고
가는것도 중요합니다. 그래서 개발자가 있고 운영자가 있는거거든요