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

Вниз

Не обновляется поле в базе   Найти похожие ветки 

 
Маша   (2003-05-21 10:59) [0]

Уважаемые Мастера, не соображу почему так.
Есть база данных ORACLE. В одной таблице есть поле типа NUMBER.
Надо разобрать текстовый файл и конвертнуть определенную позицию в файле в данное поле таблицы. Содержимое может быть и пустым и числом.
Написала код:
C4:string;
s4:integer;
....
c4:=Trim(Copy(stlist[i],22,2));
s4:=strToInt(c4);
Даллее SQL-запрос с Update. Содержимое s4 заносится в поле Number.
При выполнении программы выходит ошибка - "" is not integer type.
Что не так написала?
Помогите , пожалуйста.


 
Sergey13   (2003-05-21 11:16) [1]

Ошибка Оракла или приложения? Похоже на второе.
Проверь отладчиком что получается в с4, может там и правда is not integer type


 
KoluChi   (2003-05-21 11:32) [2]

>Даллее SQL-запрос с Update. Содержимое s4 заносится в поле >Number.

Код, пожалуйста


 
Vigo   (2003-05-21 11:53) [3]

Функция StrToInt не может получать пустого значения в качестве аргумента. В вашем случае при передачи в Trim пустой строки, или строки, состоящей из пробелов в StrToInt передается nil.
Следует проверять c4 на пустоту. В случае, когда c4 = "", самостоятельно присваивать s4 0:

c4 := Trim(ля-ля-ля)

if c4="" then s4 := 0 else c4 := StrToInt(c4);

А вообще-то для таких целей в комплекте Oracle поставляется специальный инструмент SQL*Loader, который как раз и занимается загрузкой данных из текстовых файлов различного форматов и DBASE таблиц.


 
Маша   (2003-05-21 12:12) [4]

А код Запроса такой:

ADOQuery1.SQL.Clear;
ADOQuery1.SQL.add("update Route");
ADOQuery1.SQL.add("set port=:s4");
ADOQuery1.SQL.add("where comm_id=:c1 and name=:c3");
ADOQuery1.Parameters.ParamByName("s4").Value:=s4;
и т.д......


 
KoluChi   (2003-05-21 13:49) [5]

у ADOQuery1 параметр s4 какого типа?
тип поля port числовой?


 
Маша   (2003-05-21 14:50) [6]

s4 в Parameters не прописывала, но попробовала поставить Data Type=ftInteger. Результат тот же- "" is not is valid integer value.:-(


 
Val   (2003-05-21 15:03) [7]

>Маша (21.05.03 14:50)
да погодите вы с параметрами, проверьте сначала то, что советует Sergey13 © (21.05.03 11:16)
P.S. Либо форум в последнее время оживляется женским коллективом, либо кто-то стал использовать хитрые маскировки :)



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

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

Наверх





Память: 0.45 MB
Время: 0.009 c
6-26627
chak
2003-04-06 11:13
2003.06.09
TServerClientThread !!???


4-26829
Landgraph
2003-04-10 12:23
2003.06.09
SysTray


6-26633
sergey2
2003-02-23 20:10
2003.06.09
Как вытащить рисунок (png) из HTML страницы?


14-26684
oleg_art
2003-05-21 15:20
2003.06.09
Как создать полную копию экземпляра


1-26439
Orcy
2003-05-29 01:19
2003.06.09
Вычислить выражение, записаное в виде строки





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский