Rambler's Top100
"Knowledge itself is power"
F.Bacon
Поиск | Карта сайта | Помощь | О проекте | ТТХ  
 Круглый стол
  
Правила КС
>> Настройки

Фильтр вопросов
>> Новые вопросы
отслеживать по
>> Новые ответы

Избранное

Страница вопросов
Поиск по КС


Специальные проекты:
>> К л ю к в а
>> Г о л о в о л о м к и

Вопрос №

Задать вопрос
Off-topic вопросы

Помощь

 
 К н и г и
 
Книжная полка
 
 
Библиотека
 
  
  
 


Поиск
 
Поиск по КС
Поиск в статьях
Яndex© + Google©
Поиск книг

 
  
Тематический каталог
Все манускрипты

 
  
Карта VCL
ОШИБКИ
Сообщения системы

 
Форумы
 
Круглый стол
Новые вопросы

 
  
Базарная площадь
Городская площадь

 
   
С Л С

 
Летопись
 
Королевские Хроники
Рыцарский Зал
Глас народа!

 
  
ТТХ
Конкурсы
Королевская клюква

 
Разделы
 
Hello, World!
Лицей

Квинтана

 
  
Сокровищница
Подземелье Магов
Подводные камни
Свитки

 
  
Школа ОБЕРОНА

 
  
Арсенальная башня
Фолианты
Полигон

 
  
Книга Песка
Дальние земли

 
  
АРХИВЫ

 
 

Сейчас на сайте присутствуют:
 
  
 
Во Флориде и в Королевстве сейчас  09:17[Войти] | [Зарегистрироваться]
Ответ на вопрос № 34693

Вопросы с аналогичными сообщениями об ошибках:
  • BOF или EOF имеют значение True или текущая запись была удалена (4)

    17-08-2005 04:57
    У меня есть запрос который возвращает некоторое множество записей:

    ADOStoredProc1.ProcedureName:='spSelectAllFarlepAccount;1';
    ADOStoredProc1.Open;
    ADOStoredProc1.First();
    while(ADOStoredProc1.Eof<>true) do
    Form1.ADOStoredProc1.Next();
                                             
    Form1.ADOStoredProc1.Prior();
    Form1.ADOStoredProc1.Close;

    Работает нормально. Но что делать, если этот запрос записей не возвращает(в таблице нет записей), тогда при закрытии проблема:
    "BOF или EOF имеют значение True или текущая запись была удалена."
    ExecProc не подходит, поскольку иногда запрос возвращает записи...

    [+] Добавить в избранные вопросы

    Отслеживать ответы на этот вопрос по RSS

    Ответы:


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

    18-08-2005 01:47 | Сообщение от автора вопроса
    Новый MDAC это какой? 2.8? Не помагает, хотя я уже разобрался, надо было Апдейт скачать к ADO, тогда рекордсет закрівается нормально.
    Ссылка у меня есть:
    >>>http://delphi.mtu-net.ru/library/index.htm#link12undefined

    17-08-2005 12:08
    Мужики, кончайте фигню городить, MDAC новый скачайте с Микрософта.

    17-08-2005 10:54
    http://www.delphikingdom.com/asp/listerrors.asp?ID=39

    17-08-2005 10:19 | Сообщение от автора вопроса
    Да если одна запись, тоже плохо; после Prior EOF=false но BOF=true...

    17-08-2005 10:00
    а просто проверить после Open значение RecordCount на 0? если ноль выходим, нет дальше двигаемся... или это не подходит?

    Удачи
     bob

    17-08-2005 09:33 | Сообщение от автора вопроса
    Да не помагает, даже если уберу ADOStoredProc1.First();
    и Form1.ADOStoredProc1.Prior();
    Запрос возвращает нуль записей и BOF и EOF всё равно true...

    17-08-2005 09:27 | Комментарий к предыдущим ответам
    ой, ну и конечно вместо
    while(ADOStoredProc1.Eof<>true) do
    нужно
    while not ADOStoredProc1.Eof do

    17-08-2005 09:26
    Жжуть.
    Убрать вот это
    ADOStoredProc1.First();
    и вот это
    Form1.ADOStoredProc1.Prior();
    итого:


    ADOStoredProc1.ProcedureName:='spSelectAllFarlepAccount;1';
    ADOStoredProc1.Open;
    while(ADOStoredProc1.Eof<>true) do
      ADOStoredProc1.Next();
    ADOStoredProc1.Close;


    17-08-2005 06:05
    А что такое MDAC

    "Microsoft Data Access Components (MDAC) 2.8 содержит те же основные компоненты доступа к данным, что и Microsoft SQL Server OLE DB, и драйвер ODBC. Установщик версии MDAC 2.8 устанавливает те же основные компоненты доступа к данным, что и операционная система Microsoft Windows Server 2003".

    http://www.microsoft.com/downloads/details.aspx?displaylang=ru&FamilyID=6c050fe3-c795-4b7d-b037-185d0506396c

    17-08-2005 05:42
    У меня D5
    Обновления к Delphi 5 установлены?

    17-08-2005 05:23 | Сообщение от автора вопроса
    Это я код спростил. Я заношу некоторые поля в ComboBox, перемещаясь от первой к последней записи. Если записей нет, так BOF и EOF равны true, так что Prior вообще не даёт еффекта...

    17-08-2005 05:13
    Form1.ADOStoredProc1.Prior();
    - не в комментарии - так отформатилось

    17-08-2005 05:12
    Я думаю вот так должно быть ОК:

    ADOStoredProc1.ProcedureName:='spSelectAllFarlepAccount;1';
    ADOStoredProc1.Open;
    try
      if not ADOStoredProc1.IsEmpty then
      begin
        ADOStoredProc1.First();
        while not ADOStoredProc1.Eof do
          Form1.ADOStoredProc1.Next();
        // Хотя какой в этом смысл то?                                            Form1.ADOStoredProc1.Prior();
      end;
    finally
      Form1.ADOStoredProc1.Close;
    end;



    17-08-2005 05:09 | Сообщение от автора вопроса
    У меня D5,MSSQL2000. А что такое MDAC

    17-08-2005 05:06 | Вопрос к автору: запрос дополнительной информации
    Делфи какой? и версия MDAC какая?
    Помойму у меня такая ерунда выскакивала при комбинации Delphi 5 и MDAC 2.7. Побороть ее, насколько помню, не получилось. Пришлось или на Делфи 7 переходить, или MDAC 2.6 устанавливать. Точно не помню.

    Добавьте свое cообщение

    Вашe имя:  [Войти]
    Ваш адрес (e-mail):На Королевстве все адреса защищаются от спам-роботов
    контрольный вопрос:
    Однажды, в студеную зимнюю пору я из лесу вышел, был сильный ЧТО?
    в качестве ответа на вопрос или загадку следует давать только одно слово в именительном падеже и именно в такой форме, как оно используется в оригинале.
    Надоело отвечать на странные вопросы? Зарегистрируйтесь на сайте.
    Тип сообщения:
    Текст:
    Жирный шрифт  Наклонный шрифт  Подчеркнутый шрифт  Выравнивание по центру  Список  Заголовок  Разделительная линия  Код  Маленький шрифт  Крупный шрифт  Цитирование блока текста  Строчное цитирование
  • вопрос Круглого стола № XXX

  • вопрос № YYY в тесте № XXX Рыцарской Квинтаны

  • сообщение № YYY в теме № XXX Базарной площади
  • обсуждение темы № YYY Базарной площади
  •  
     Правила оформления сообщений на Королевстве

    Вопросы с аналогичными сообщениями об ошибках:
  • BOF или EOF имеют значение True или текущая запись была удалена (4)


    Страница избранных вопросов Круглого стола.
  •   
    Время на сайте: GMT минус 5 часов

    Если вы заметили орфографическую ошибку на этой странице, просто выделите ошибку мышью и нажмите Ctrl+Enter.
    Функция может не работать в некоторых версиях броузеров.

    Web hosting for this web site provided by DotNetPark (ASP.NET, SharePoint, MS SQL hosting)  
    Software for IIS, Hyper-V, MS SQL. Tools for Windows server administrators. Server migration utilities  

     
    © При использовании любых материалов «Королевства Delphi» необходимо указывать источник информации. Перепечатка авторских статей возможна только при согласии всех авторов и администрации сайта.
    Все используемые на сайте торговые марки являются собственностью их производителей.

    Яндекс цитирования