Страница: 1 |
Страница: 1 |
Вопрос: Преобразование Суммы
Добавлено: 21.07.05 16:11
Автор вопроса: Денис | ICQ: 109593029
В таблице есть поле Summa,тип Float, значение 25,5.
Когда далаешь запрос
INSERT INTO <NameTable>
(Summa)
VALUES (25,5)
Выдает ошибку, из-за того что в числе стоит запятая.
Format("25,5", "##.##") не помогает.
Ctype("25,5", Integer) выдает только 25
Как преобразовать число 25,5 в 25.5?
Ответы
Всего ответов: 9
Номер ответа: 1
Автор ответа:
Денис
ICQ: 109593029
Вопросов: 15
Ответов: 32
Профиль | | #1
Добавлено: 21.07.05 16:45
Dim str as string = "25,5"
str.Replace(",","."
Сделал так. Работает, но по-моему это не серьезно.
Номер ответа: 2
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #2
Добавлено: 21.07.05 16:46
25.5
Номер ответа: 3
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #3
Добавлено: 21.07.05 16:47
Я имел в виду - почему в запрос попадает запятая? Откуда это число идёт и в какой форме? И почему нельзя сразу передавать его числом с точкой?
Номер ответа: 4
Автор ответа:
Денис
ICQ: 109593029
Вопросов: 15
Ответов: 32
Профиль | | #4
Добавлено: 22.07.05 14:27
25,5 берется из базы DBF и запросом Insert into и т.д. отправляется на SQL сервер. Проблема в том что в DBF уже стоит с запятой, а при вставке в запрос число 25,5 воспринимается как две разные колонки:
Insert into (summa)
VALUES (25,5)
Номер ответа: 5
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #5
Добавлено: 22.07.05 16:41
Ы...
Ничё не понял...
В DBF, что ли, текстовое поле, в котором точно запятая? Тогда replace.
Номер ответа: 6
Автор ответа:
.:: St!X ::.
ICQ: 339888425
Вопросов: 13
Ответов: 51
Web-сайт:
Профиль | | #6
Добавлено: 27.07.05 14:17
В DBF, что ли, текстовое поле, в котором точно запятая? Тогда replace.
что непонятного? синтаксис нарушен INSETR INTO <NameTable> (Summa) - поле одно а передаем 2 значения (25,5). Запятая как разделитель значений полей в данном случае а не как разделитель разрядов.
а вообще научись юзать ADOCommand там можно все, ну или почти. Для знающих: не вопрос передать такой текст это'текст
Номер ответа: 7
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #7
Добавлено: 27.07.05 15:05
Ты знаешь, что бывают поля числовые и строковые в базах данных?.. Мне непонятно, поле какого типа находится в DBF. Если числового, то мне непонятно в чём проблема. Если строкового, то всё понятно, и тогда replace.
Номер ответа: 8
Автор ответа:
.:: St!X ::.
ICQ: 339888425
Вопросов: 13
Ответов: 51
Web-сайт:
Профиль | | #8
Добавлено: 28.07.05 09:43
А что юзаешь для подключения к DBF? Если ADO то в ADORecordset есть свойство Filds(<имя_поля>.Type где и указан тип поля в базе-источнике
Если, что не то пишу - сформулируй вопрос по другому...
Номер ответа: 9
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #9
Добавлено: 28.07.05 10:17
Я ничего не юзаю, а что юзает Денис, я не знаю.