복붙노트

[SQL] SQL 서버의 이중 어떤 표현?

SQL

SQL 서버의 이중 어떤 표현?

나는 두 번있는 C #에서 몇 가지 속성을 가지고 있고 나는 SQL Server에서 테이블에이를 저장하고 싶지만, 사용, 소수 또는 부동 소수점에 가장 좋은 것입니다 그래서 두 종류가 존재하지 않습니다 발견?

내가 가장 정확한 정밀도를 필요로하기 때문에 이러한 현상이 위도와 경도 값을 저장합니다.

지금까지 답변 주셔서 감사합니다.

해결법

  1. ==============================

    1.

    float
    

    아니면 오래된 학교를 가고 싶은 경우 :

    real
    

    또한 플로트 (53)를 사용할 수 있지만, float로서 같은 일을 의미한다.

    ( "실시간"은 플로트 (24), 플로트되지 / 플로트 (53)에 상당).

    진수 (x, y)는 SQL 서버 유형은 오히려 포인트 (근사치가 될 수있는) 부동보다 정확한 진수를 할 때입니다. 이것은보다 128 비트의 부동 소수점 수와 같이 인 C #의 "소수"데이터 형식, 대조적이다.

    MSSQL 플로트 .NET에서 64 비트 double 형 (가수 IIRC에서 약간의 차이)와 정확히 같은 정밀도를 가지고 있지 않지만, 대부분의 용도에 가까운만큼 일치합니다.

    이 플로트 / 플로트 (53)에 비해 MSSQL에서 실제 / 플로트 (24) 유형 SQL에서 더 동등한 것 때문에 일을 더 혼란하려면 C #에서 "플로트", 32 비트입니다.

    특정 사용 사례에 ... 당신이 필요로 소수점 이후 5 곳 약 1 미터의 정밀도 내에서 위도와 경도 표현하기 위해, 당신은 단지 정도의 소수점 전에 세 자리까지해야합니다. 당신은 두 배로 필요하지 않습니다, 플로트 (24) 또는 10 진수 (8,5)는 가장 MSSQL에있는 당신의 요구에 맞게되며, C #에서 사용하는 플로트 좋은 충분하다. 사실, 사용자는 5 소수점 반올림보다는 타고 따라 오는 무의미한 숫자의 무리를 줘서 감사 아마 것입니다.

  2. ==============================

    2.또한, 여기에 유용한 차트 SQL-CLR 형식 매핑에 대한 좋은 답변입니다.

    또한, 여기에 유용한 차트 SQL-CLR 형식 매핑에 대한 좋은 답변입니다.

    (다윗) 해당 게시물에서 :

  3. ==============================

    3.플로트는 가장 가까운 동일합니다.

    플로트는 가장 가까운 동일합니다.

    SqlDbType 열거

    위도 / 경도의 경우 영업 이익이 언급 한 바와 같이.

    미터기는 1 초 ~ 30 미터이며, 위도의 1 / 40,000,000이다. 플로트 / 더블 당신에게 15 개 유효 숫자를 제공합니다. 일부 빠르고 사기 암산으로 ... 라운딩 / 근사 오류가이 필 정지의 길이에 관하여이 될 것입니다 - ".">

  4. ==============================

    4.당신은 FLOAT (53)에 매핑한다 - SQL에 어떤 LINQ의가하는.

    당신은 FLOAT (53)에 매핑한다 - SQL에 어떤 LINQ의가하는.

  5. ==============================

    5.SQL Server의 플로트가 실제로있다 [편집 : 거의] (C #을 의미)는 "더블"의 정밀도.

    SQL Server의 플로트가 실제로있다 [편집 : 거의] (C #을 의미)는 "더블"의 정밀도.

    플로트 플로트 (53)에 대한 동의어이다. 53 가수의 비트이다.

    .NET 이중 용도 가수 54 비트.

  6. ==============================

    6.SQL Server의 경우 :

    SQL Server의 경우 :

    진수 유형은 128 비트 부호있는 숫자입니다 플로트는 64 비트 부호있는 숫자입니다.

    진짜 대답은 내가 소수에 대한 정확, 플로트입니다.

    당신이 진수 형식의 64 비트를 기입하지 않습니다 진수를 사용하는 경우 그 이유입니다.

    당신이 INT 유형을 사용하려고하면 소수는 당신에게 오류를 제공하지 않습니다 만.

    다음 유형의 좋은 참조 차트이다.

  7. ==============================

    7.당신이 선택하고 선택할 수있는 것 같은데. 당신은 플로트를 선택하면, 당신은 정밀도의 11 개 자리를 잃을 수 있습니다. 그 허용의 경우, 갈 - 분명히 Linq에 디자이너이 좋은 트레이드 오프로 생각했다.

    당신이 선택하고 선택할 수있는 것 같은데. 당신은 플로트를 선택하면, 당신은 정밀도의 11 개 자리를 잃을 수 있습니다. 그 허용의 경우, 갈 - 분명히 Linq에 디자이너이 좋은 트레이드 오프로 생각했다.

    그러나, 응용 프로그램은 이러한 추가 숫자를 사용 진수를 필요로한다. (올바르게 구현) 진수 방식보다 정확한 어쨌든 부동 이상입니다 - 기본 2 위로베이스 (10)로부터 지저분한 번역.

  8. ==============================

    8.부동는 SQL 서버에서 더블 나타냅니다. 당신은 비주얼 스튜디오에서 코딩 C에서 #에서 증거를 찾을 수 있습니다. 저는 여기에 SQL 서버와 C #에서 플로트로 초과 근무를 선언했다. 따라서 나는 변환 할 수 있어요

    부동는 SQL 서버에서 더블 나타냅니다. 당신은 비주얼 스튜디오에서 코딩 C에서 #에서 증거를 찾을 수 있습니다. 저는 여기에 SQL 서버와 C #에서 플로트로 초과 근무를 선언했다. 따라서 나는 변환 할 수 있어요

    int diff=4;
    attendance.OverTime = Convert.ToDouble(diff);
    

    여기에 초과 근무 선언 플로트 식

  9. from https://stackoverflow.com/questions/1209181/what-represents-a-double-in-sql-server by cc-by-sa and MIT license