Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.119.111.9] |
|
Сообщ.
#1
,
|
|
|
есть код
var x:integer; begin x:=form1.adotable1.RecordCount; //здесь возвращает количество строк, отличное от НУЛЯ showmessage(inttostr(x)); form1.adotable1.RecNo:=1; // а здесь возникает ошибка end; При выполнении данного кода, и работе с локальной базой msAccess при выполнении form1.adotable1.RecNo:=x; происходил переход на запись с указанным номером в таблице. Когда начал переводить программу на удаленную базу MYSQL на сервере, столкнулся с проблемой, что при выполнении этой строки, вылетает эта ошибка BOF или EOF имеет значение true либо запись была удалена... хотя запись с таким номером существует... Подскажите как решить? |
Сообщ.
#2
,
|
|
|
Цитата dreyqq @ form1.adotable1.RecNo:=1; // а здесь возникает ошибка Table.First(); // переход на первую запись набора данных Цитата dreyqq @ Номер записи - штука весьма условная. Поле первичного ключа в таблице (наборе данных) есть? хотя запись с таким номером существует... |
Сообщ.
#3
,
|
|
|
ТС, мой тебе совет, не юзай adotable, используй
Добавлено И, да, позиционироваться через recno:=... моветон. Используй first/last/next/prior + ORDER/LIMIT в теле запроса. |
Сообщ.
#4
,
|
|
|
Цитата dreyqq @ form1.adotable1.RecNo:=1 При каком событие это событие происходит, коннект есть? Цитата Gonarh @ И, да, позиционироваться через recno:=... моветон. Индекс может быть разный |
Сообщ.
#5
,
|
|
|
Цитата Bas @ Коннект есть, recordCount возвращает правильное значение записей, а вот при попытке перехода на запись (RecNo) и вылетает ошибка |
Сообщ.
#6
,
|
|
|
Цитата dreyqq @ recordCount возвращает правильное значение записей, Согласен. Цитата dreyqq @ запись (RecNo) и вылетает ошибка Rекосет может вернуть Все что ему заказали Разница в локальной и сетевой БД . Добавлено Кто получит данные первым |
Сообщ.
#7
,
|
|
|
Когда у меня были проблемы с .RecordCount, то я сначала делал
МойНабор.first; МойНабор.last; МойНабор.first; А уж потом проводил нужные мне манипуляции. Хотя моя проблема была в некорректном .RecordCount Возможно если тебе нужно перейти на 1-ю запись, то стоит использовать вместо .recno:=1 как раз .first |
Сообщ.
#8
,
|
|
|
Обычно FetchAll для этих целей есть
|