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

Вниз

Аppend   Найти похожие ветки 

 
Жук   (2003-01-21 15:26) [0]

Подскажите, плз !
При append"e в DataSet вылезает ошибка "multiple rows in singleton select". id генерируется AfterInsert.
С чем это может быть связано ?


 
Johnmen   (2003-01-21 15:42) [1]

Компоненты доступа ?
И менно при вызове метода Append ?


 
Жук   (2003-01-21 15:47) [2]

DataSet - надстройка над FIBC.
При вызове Append"a выскакивает эта ошибка. Может быть это связано с Refresh"ем ?


 
Johnmen   (2003-01-21 15:57) [3]

Компоненты доступа ??? Не надстройка...
И связано, скорее всего, с Insert"ом...


 
Жук   (2003-01-21 16:09) [4]

Дело в том, что там :
"if DBGrid1.DataSource=DM.DSKomplekt then d:=DM.Komplekt
else d:=DM.FreeKomp;
d.Append;"
Оба DataSet"a с одинаковыми Insert"ми, но при else всё нормально, а при then вылезает ошибка на Append"e. Отличаются DataSet"ы только select"ом и refresh"ем.
Идеи есть ?


 
Johnmen   (2003-01-21 16:20) [5]

Идея проста - перекопать запросы...:)
Может приведешь их для DM.Komplekt ?


 
Жук   (2003-01-21 16:23) [6]

Как раз сижу - копаю. :-(
Запрос :
"select k.id,k.id_ferrum,k.nomer,k.ps,k.inwnom,k.cena,k.id_fuck,f.name,
n.name,
(select p.komp from komputer(k.id) p) as komp,
(select fu.name from fuck fu where k.id_fuck=fu.id) as sf,
(select p.inw_nomer from pasport p,first_konfig fk
where k.id=fk.id_komplekt and fk.id_komputer=p.id) as fkomp
from komplekt k,ferrum f,name_ob n
where k.id_ferrum=f.id and n.id=f.id_ob
order by n.name"
komputer в первом вложенном select"e - хранимая процедура


 
Delirium^.Tremens   (2003-01-21 16:26) [7]


> "multiple rows in singleton select".

Эта ошибка вызыается SELECT"ом, а ни как не INSERT"ом. Возможно это SELECT из RefreshSQL? Там есть (должно быть) что-то типа WHERE id = ?old_id


 
Delirium^.Tremens   (2003-01-21 16:27) [8]

Жук © (21.01.03 16:23)
Wow!


 
Жук   (2003-01-21 16:29) [9]

В refresh"e "... and k.id=?old_id"
Что тут проблемного может быть ?


 
Delirium^.Tremens   (2003-01-21 16:31) [10]

Жук © (21.01.03 16:29)

> В refresh"e "... and k.id=?old_id"
> Что тут проблемного может быть ?

Если это есть, то ничего


 
Johnmen   (2003-01-21 16:34) [11]

Проблема с вложенными запросами - в данном контексте они должны возвращать единственное значение...


 
Delirium^.Tremens   (2003-01-21 16:35) [12]

А ты уверен, что все эти вложенные селекты возвращают по одной строке? Проверь процедуры.
И сколько это будет выполняться, когда количество записей в таблицах станет больше 10?


 
Жук   (2003-01-21 16:47) [13]

Убрал все вложенные запросы - всё нормально. Спасибо всем.


 
Alexandr   (2003-01-22 07:55) [14]


> Убрал все вложенные запросы - всё нормально. Спасибо всем.


ты бы еще написал "стер программу нахрен. Жить стало легче"



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

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

Наверх





Память: 0.47 MB
Время: 0.011 c
1-15575
AFrolov
2003-01-28 16:43
2003.02.06
Еще 1 вопрос про TChart


7-15943
Walker
2002-11-27 07:00
2003.02.06
Отключить экранную заставку


6-15792
dkDimon
2002-12-14 23:28
2003.02.06
Pager


3-15427
Toshik
2003-01-21 14:35
2003.02.06
Мастера помогите понять, что тут требуется!


6-15786
Georg
2002-12-13 14:42
2003.02.06
CGI-приложения





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