SQL Server에로드 된 모든 값을 가져 오는 스프레드 시트가 있습니다. 스프레드 시트의 필드 중 하나가 돈이됩니다. 이제는 모든 것을 정확하게 표시하기 위해 Money with DataType을 사용하여 필드에 필드를 추가했습니다.SQL Server vs 문자열의 데이터 형식 문제
스프레드 시트에서 값을 읽을 때이 값과 같이 String으로 저장합니다. "94259.4". SQL Server에 삽입되면 "94259.4000"처럼 보입니다. SQL에서 값을 가져올 때 SQL Server 값 0을 제거하는 방법이 있습니까? 왜냐하면이 두 값은 같지만이 두 값이 같기 때문입니다. Strings - 같은 가치가 없다고 생각합니다.
값이 다음과 같이 나타날 때 다른 문제가 발생할 것으로 예상됩니다 ... 94,259.40 나는 그 기간이 지나면 숫자를 2로 제한한다고 생각합니다. 그래서이 형식으로 서버에서 값을 선택하는만큼 94,259.40 - 나는 씬이 좋을 것입니다.
편집 :
For Column = 1 To 34
Select Case Column
Case 1 'Field 1
If Not ([String].IsNullOrEmpty(CStr(excel.Cells(Row, Column).Value)) Or CStr(excel.Cells(Row, Column).Value) = "") Then
strField1 = CStr(excel.Cells(Row, Column).Value)
End If
Case 2 'Field 2
' and so on
나는 각 필드를 통해 이동하여 문자열 값을 저장합니다. 그런 다음 DB와 비교하여 동일한 값을 가진 레코드가 있는지 확인합니다. 내 방식의 유일한 필드는 머니 필드입니다.
스프레드 시트를 SQL Server에로드하는 데 어떤 도구를 사용합니까? – user3272686
오래 전부터 배운 추악한 교훈 : 절대, 절대로, 절대로, 절대로, SQL Server에서 MONEY 데이터 형식을 사용하지 마십시오. 강아지가 상처를 입히고 우주에서 불균형을 일으 킵니다. –
@ user3272686 - 스프레드 시트를 열고 값을 가져 오는 도구가 없습니다 (필드 지정 등) – BobSki