Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2006.03.05;
Скачать: [xml.tar.bz2];

Вниз

Ошибка преобразования!?   Найти похожие ветки 

 
VadimSpb   (2006-01-09 11:36) [0]

Получаю следующую ошибку преобразования типа данных при запросе.
Вариант №1.
ADOCommand.CommandText := "INSERT INTO Table1 (Pole1) Values (100.45);
ADOCommand.Execute;
Pole1 - типа float.
Все замечательно работает.

Вариант №2.
Edit1.Text := "100.45";
ADOCommand.CommandText := "INSERT INTO Table1 (Pole1) Values (" + Edit1.Text + ")";
ADOCommand.Execute;
Не работает!!!
Ошибка: "100.45" is not a valid floating point value.

Может проблема в длительных Новогодних праздниках?


 
dioman ©   (2006-01-09 11:53) [1]


> Может проблема в длительных Новогодних праздниках?


видимо да


 
Fay ©   (2006-01-09 12:05) [2]

2 VadimSpb   (09.01.06 11:36)
не верю


 
VadimSpb   (2006-01-09 12:11) [3]

Я очень хочу этому не верить!!!
Но, бытие определяет сознание.


 
Fay ©   (2006-01-09 12:27) [4]

2 VadimSpb   (09.01.06 12:11) [3]
Это космические лучи. Сто пудов 8)


 
Anatoly Podgoretsky ©   (2006-01-09 12:33) [5]

VadimSpb   (09.01.06 11:36)  
Ты где то нас обманываешь


 
tech ©   (2006-01-09 14:37) [6]

Попробуйте

ADOCommand.CommandText := "INSERT INTO Table1 (Pole1) Values (" + Trim(Edit1.Text) + ")";


 
Fay ©   (2006-01-09 14:52) [7]

2 tech ©   (09.01.06 14:37) [6]
Попробуйте
ADOCommand.CommandText := "INSERT INTO Table1 (Pole1) Values (         100.45            )";


 
Desdechado ©   (2006-01-09 14:56) [8]

используй параметры и все будет ок
проблема в непонимании разделителя целой и дробной части
на клиенте и сервере они могут быть разные, причем как понастройкам ОС, так и сервера БД


 
Fay ©   (2006-01-09 15:00) [9]

2 Desdechado ©   (09.01.06 14:56) [8]
На сервере всегда точка. В "100.45" тоже точка. Видимо, не очень разные.


 
Anatoly Podgoretsky ©   (2006-01-09 15:51) [10]

Desdechado ©   (09.01.06 14:56) [8]
Ну он вроде как пишет, что точка, но думаю обманывает.


 
Dioman ©   (2006-01-09 15:52) [11]


> Desdechado ©   (09.01.06 14:56) [8]


в обоих примерах на сервер идут одинаковые строки....


 
sniknik ©   (2006-01-09 16:00) [12]

> в обоих примерах на сервер идут одинаковые строки....
если выполняется тот код, что показан нам. (!!!)

но думаю он опустил разные "несущественные" (с его точки зрения) детали, и мы здесь видим совершенно не то, что у него выполняется (и дает ошибку), т.е. он нас попросту обманывает. или "разводит" (что тоже возможно).


 
VadimSpb   (2006-01-09 16:23) [13]

Да-а, уж и не думал, что в обмане обвинят ... :-((
Мне совсем не до смеха, дурка полная. В отладчике вижу две одинаковые стринги. Пример простой, поробуйте сами.
А запятую там в принципе нельзя ставить - это и ежу ясно.


 
dioman ©   (2006-01-09 16:25) [14]


> VadimSpb   (09.01.06 16:23) [13]


переустанови виндоуз.


 
VadimSpb   (2006-01-09 16:27) [15]

Очень полезный совет. Часто помогает?


 
Fay ©   (2006-01-09 16:40) [16]

2 VadimSpb   (09.01.06 16:23) [13]
> Пример простой, поробуйте сами
Всё ОК


 
parovoZZ ©   (2006-01-09 16:41) [17]

Я тут мимо пробегал...
Может ОН думает, что это не текст, а цифры. Или наоборот. Гы. А может ему фиолетово?


 
Dioman ©   (2006-01-09 16:46) [18]


> VadimSpb   (09.01.06 16:27) [15]
>
> Очень полезный совет. Часто помогает?
>


не часто, но может помочь ;)


 
VadimSpb   (2006-01-09 16:53) [19]


> Я тут мимо пробегал...
> Может ОН думает, что это не текст, а цифры. Или наоборот.
>  Гы. А может ему фиолетово?

Будете проходить мимо - проходите мимо.


 
VadimSpb   (2006-01-09 19:49) [20]

Однако, сделал. Всем спасибо.
"Забытых" процессов не было, проверил сразу.
Все проще и одновременно грустнее.
Просто заменил Edit на новый - и все!
Похоже, что это результат перехода с D7 на D2005. Уже не в первый раз сталкиваюсь с тупыми проблемами (напр. поведение MessageBox, пришлось переписать на API и пр., а оказалось лечится SP1,2,3).
В Accesse как-то проходило, а сейчас правлю под SQL SERVER вот и полезло.


 
Desdechado ©   (2006-01-09 20:03) [21]

повторю для тех, кто в танке
используй параметры, не будет надуманных и не очень проблем


 
VadimSpb   (2006-01-09 20:14) [22]

Забавно было видеть именно ошибку преобразования типа данных.
Это откуда? Формируется и передается именно стринга.


 
sniknik ©   (2006-01-09 20:18) [23]

> В Accesse как-то проходило, а сейчас правлю под SQL SERVER вот и полезло.
ни Access ни MSSQL здесь ни причем,
ошибка:
> "xxxxxx" is not a valid floating point value.
дельфевая, это ошибка преобразования строки к флоату (EConvertError). преобразований в коде ([0]) нет. делаем вывод - эта часть "опущена как несущственная"  
в MSSQL было бы (на преобразование)
Error converting data type xxxxxx to float
а в Access типа
Несоответствие типов данных в выражении условия отбора
делаем следующий вывод - ты до сих пор пытаешся "пудрить нам мозги" списывая собственные промахи на "неведомый подземный стук".


 
sniknik ©   (2006-01-09 20:22) [24]

советую всеже приводить код as is, и с запасом +- несколько строк, а не только то что сами считаете важным "избранное так сказать", очищая с вашей точки зрения "шелуху" убираете и то что пытаетесь донесть (если бы знали, что именно нужно, то сами бы легко разпознали ошибку, а раз не распознали...).


 
VadimSpb   (2006-01-09 20:24) [25]


> делаем следующий вывод - ты до сих пор пытаешся "пудрить
> нам мозги" списывая собственные промахи на "неведомый подземный
> стук".

Жаль что встретил определенное непонимание.
Каждый может делать свои выводы.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2006.03.05;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.5 MB
Время: 0.011 c
2-1139990783
49 Cent
2006-02-15 11:06
2006.03.05
Можно ли через Dbgrid отображать подтаблицу?


3-1136889969
moteus
2006-01-10 13:46
2006.03.05
Проблема с потерей коннекта в ODAC


2-1140188665
KyRo
2006-02-17 18:04
2006.03.05
TStringList


4-1134737392
Nickolay
2005-12-16 15:49
2006.03.05
WM_DEVICECHANGE - отлов подключения/отключения USB-устройства


2-1139920372
webpauk
2006-02-14 15:32
2006.03.05
ClientToScreen





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский