У меня есть таблица, которая получает все значения, загружаемые в SQL Server. Одно из полей в электронной таблице - деньги. Теперь, чтобы все отображалось корректно - я добавил поле в свой tbl с помощью Money as DataType.Проблема с типом данных Деньги в SQL SERVER vs string
Когда я прочитал значение из таблицы, я в значительной степени сохранил его как строку, например ... "94259.4". Когда он вставлен в sql-сервер, он выглядит так: «94259.4000». Есть ли способ для меня в основном избавиться от 0 в значении сервера sql, когда я его беру из БД, потому что проблема, с которой я сталкиваюсь, заключается в том, что, хотя эти два значения одинаковы, поскольку они оба сравниваются как Строки - он думает, что нет одинаковых значений.
Я предвижу еще одну проблему, когда значение может выглядеть так ... 94,259.40 Я думаю, что может работать, это ограничение числа до 2 после периода. Так что пока я выбираю значение с сервера с этим форматом 94,259.40 - я худею, все должно быть в порядке.
EDIT:
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
Я иду через каждое поле и сохранить значение в виде строки. Затем я сравниваю его с БД и вижу, есть ли запись с одинаковыми значениями. Единственное поле на моем пути - это поле денег.
Какой инструмент вы используете для загрузки электронной таблицы в SQL Server? – user3272686
Уродливый урок, давно извлеченный: никогда, никогда, никогда, НИКОГДА, НИКОГДА, eVeR, используйте тип данных MONEY в SQL Server. Это заставляет щенков болеть и вызывает дисбаланс во Вселенной. –
@ user3272686 - не инструмент, просто открывающий таблицу и захватывающие значения (задающие поля и т. Д.) – BobSki