Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Работа с данными

Страница: 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-сайт: www.ks-brand.ru
 Профиль | | #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-сайт: www.ks-brand.ru
 Профиль | | #8
Добавлено: 28.07.05 09:43
А что юзаешь для подключения к DBF? Если ADO то в ADORecordset есть свойство Filds(<имя_поля>;).Type где и указан тип поля в базе-источнике
Если, что не то пишу - сформулируй вопрос по другому...

Ответить

Номер ответа: 9
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #9 Добавлено: 28.07.05 10:17
Я ничего не юзаю, а что юзает Денис, я не знаю.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам