Q&A

  • 소숫점 문제
답변을 부탁합니다...

1) 환경

ㅇ OS : NT

ㅇ Tool : Delphi4.0

ㅇ DB : MS-SQL7.0



2) 문제점

1. 숫자Field가 하나 있습니다... (예 Field Name : Qty1 ... Type Numeric(12,2) )

2. BDE를 사용하여 Table을 직접 Connect하여 값을 저장하려고 합니다.

3. 5.1 -> 5.1 으로 저장 됨.

4. 5.2 -> 5.19 으로 저장 됨.

5. 5.3 -> 5.3 으로 저장 됨.

6. 5.4 -> 5.39 으로 저장 됨.

7. 5.5 -> 5.5 으로 저장 됨.

8. 5.6 -> 5.6 으로 저장 됨.

9. 5.7 -> 5.69 으로 저장 됨.

10. 5.8 -> 5.8 으로 저장 됨.

11. 5.9 -> 5.89 으로 저장 됨.



위와 같은 값으로 저장 될때 어떻게 하여야 해야 하는지...

급하니... 답변을 부탁합니다...





2  COMMENTS
  • Profile
    mafioso 2000.09.28 18:54
    CWS wrote:

    > 답변을 부탁합니다...

    > 1) 환경

    > ㅇ OS : NT

    > ㅇ Tool : Delphi4.0

    > ㅇ DB : MS-SQL7.0

    >

    > 2) 문제점

    > 1. 숫자Field가 하나 있습니다... (예 Field Name : Qty1 ... Type Numeric(12,2) )

    > 2. BDE를 사용하여 Table을 직접 Connect하여 값을 저장하려고 합니다.

    > 3. 5.1 -> 5.1 으로 저장 됨.

    > 4. 5.2 -> 5.19 으로 저장 됨.

    > 5. 5.3 -> 5.3 으로 저장 됨.

    > 6. 5.4 -> 5.39 으로 저장 됨.

    > 7. 5.5 -> 5.5 으로 저장 됨.

    > 8. 5.6 -> 5.6 으로 저장 됨.

    > 9. 5.7 -> 5.69 으로 저장 됨.

    > 10. 5.8 -> 5.8 으로 저장 됨.

    > 11. 5.9 -> 5.89 으로 저장 됨.

    >

    > 위와 같은 값으로 저장 될때 어떻게 하여야 해야 하는지...

    > 급하니... 답변을 부탁합니다...

    >

    >



    하하하...

    저두 똑같은 경험을 했었지요.

    원인은 BDE setting에 있습니다.

    BDE Admin에서 보기면 Enabled BCD가 있습니다.

    거기를 True로 설정하세요.

    원인은 컴퓨터에서 부동소수점의 표현방식땜에 그런거구요

    BCD format을 쓰시면 소수4자리 까지느 정확히 저장됩니다.



  • Profile
    코스모 2000.09.28 06:16
    CWS wrote:

    > 답변을 부탁합니다...

    > 1) 환경

    > ㅇ OS : NT

    > ㅇ Tool : Delphi4.0

    > ㅇ DB : MS-SQL7.0

    >

    > 2) 문제점

    > 1. 숫자Field가 하나 있습니다... (예 Field Name : Qty1 ... Type Numeric(12,2) )

    > 2. BDE를 사용하여 Table을 직접 Connect하여 값을 저장하려고 합니다.

    > 3. 5.1 -> 5.1 으로 저장 됨.

    > 4. 5.2 -> 5.19 으로 저장 됨.

    > 5. 5.3 -> 5.3 으로 저장 됨.

    > 6. 5.4 -> 5.39 으로 저장 됨.

    > 7. 5.5 -> 5.5 으로 저장 됨.

    > 8. 5.6 -> 5.6 으로 저장 됨.

    > 9. 5.7 -> 5.69 으로 저장 됨.

    > 10. 5.8 -> 5.8 으로 저장 됨.

    > 11. 5.9 -> 5.89 으로 저장 됨.

    >

    > 위와 같은 값으로 저장 될때 어떻게 하여야 해야 하는지...

    > 급하니... 답변을 부탁합니다...

    >

    >



    반갑습니다

    근데 제가 정확한 질문 내용을 모르겠군요??



    꼭 소수점 두 자리가 저장 되어야 하는지도 모르겟구 앞에 있는값들이 저장 되어야 하나여??



    뒤에 값(소수점이 2자리 있는것)을 입력했을때

    앞에 값이 나와야 하나여???



    뒤값이 나와야 한다면 필드를 (12,1)을 하면 되겟지여