Переключение на Главную Страницу Страницы: 1 2 [3]  ОтправитьПечать
Очень популярная тема (более 25 ответов) Провайдер OLE DB от VFP SP2 (число прочтений - 21053 )
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Провайдер OLE DB от VFP SP2
Ответ #30 - 06. Ноября 2007 :: 06:48
Печать  
А вот для Scan  SET FILTER TO  работает
т.е. вот так:
SET FILTER TO Date == d
FOR i = 1 TO 10000
SCAN
     EXIT
ENDSCAN
NEXT i

Попробуй через провайдер, но результат тот же что и для SCAN FOR
  
Наверх
ICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Провайдер OLE DB от VFP SP2
Ответ #31 - 06. Ноября 2007 :: 06:51
Печать  
а  если в место Set FILTER использовать  SET KEY - то и результат от SEEK отличается всего раз в 5 Улыбка
  
Наверх
ICQ  
IP записан
 
Uzhast
1c++ power user
Отсутствует



Сообщений: 1341
Зарегистрирован: 30. Августа 2006
Пол: Мужской
Re: Провайдер OLE DB от VFP SP2
Ответ #32 - 06. Ноября 2007 :: 07:23
Печать  
Nick писал(а) 06. Ноября 2007 :: 06:35:
Чиво тут читать?

Ну вот, например http://www.sql.ru/forum/actualthread.aspx?bid=37&tid=330688&hl=set+filter:
Цитата:
Фильтр – это некое ограничение, накладываемое при перемещении указателя записи. Причем вычисление выражения фильтра происходит каждый раз при попытке переместить указатель. Логика примерно следующая.

При подаче команды SKIP FoxPro перемещает указатель записи на следующую запись. Если эта запись не удовлетворяет условию фильтра, то FoxPro автоматически перемещает указатель на следующую запись. Опять проверяет условие фильтра. И так до тех пор, пока не будет найдена запись, удовлетворяющая условию фильтра или же не будет достигнут конец таблицы.

Другими словами, фильтр, это не что-то вычисленное один раз при подаче команды SET FILTER. Это условие, которые проверяется каждый раз при попытке перемещения на очередную запись.

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

Имеет смысл использовать фильтр для отсечения небольшого количества записей. Если же надо отфильтровать (отбросить) много записей, то лучше использовать Local View или Select-SQL.


Или из онлайнового МСДН http://msdn2.microsoft.com/en-us/library/52b84ce3(VS.80).aspx:
Цитата:
You can set a separate filter for every open table. In most cases, once you issue SET FILTER, you can retrieve only the records in the table that satisfy the condition specified by the logical expression lExpression. When the applied scope clause references records in relative terms, all commands that allow a scope clause will respect the SET FILTER condition. However, any command that uses a stated or implied scope of RECORD nRecordNumber, including GOTO, REPLACE, and others, will not respect the filter. Such commands always act on the specified record, provided the record exists. This is true even if the filter excludes that record. Note, however, that the GOTO TOP/BOTTOM command does respect the filter condition.


Так что дело темное...
  
Наверх
 
IP записан
 
Uzhast
1c++ power user
Отсутствует



Сообщений: 1341
Зарегистрирован: 30. Августа 2006
Пол: Мужской
Re: Провайдер OLE DB от VFP SP2
Ответ #33 - 06. Ноября 2007 :: 07:25
Печать  
А SET FILTER + SCAN заюзать попробую. Спасибо за раскопки Улыбка
В принципе, мне же не обязательно заюзать SET FILTER любой ценой Улыбка Но если с ним будет удобнее, то почему бы и нет?
  
Наверх
 
IP записан
 
Uzhast
1c++ power user
Отсутствует



Сообщений: 1341
Зарегистрирован: 30. Августа 2006
Пол: Мужской
Re: Провайдер OLE DB от VFP SP2
Ответ #34 - 06. Ноября 2007 :: 07:32
Печать  
О, только сейчас заметил, что у тебя GOTO 1, а не GOTO TOP. А с GOTO TOP не заработает? Улыбка Вроде по МСДН должно сработать.
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Провайдер OLE DB от VFP SP2
Ответ #35 - 06. Ноября 2007 :: 07:32
Печать  
так у тебя там только про SKIP говорится что работает
Так что ни чего тёмного
  
Наверх
ICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Провайдер OLE DB от VFP SP2
Ответ #36 - 06. Ноября 2007 :: 07:36
Печать  
Uzhast писал(а) 06. Ноября 2007 :: 07:32:
О, только сейчас заметил, что у тебя GOTO 1, а не GOTO TOP. А с GOTO TOP не заработает? Улыбка Вроде по МСДН должно сработать.

с GOTO TOP РАБОТАЕТ!
  
Наверх
ICQ  
IP записан
 
Uzhast
1c++ power user
Отсутствует



Сообщений: 1341
Зарегистрирован: 30. Августа 2006
Пол: Мужской
Re: Провайдер OLE DB от VFP SP2
Ответ #37 - 06. Ноября 2007 :: 07:37
Печать  
Nick писал(а) 06. Ноября 2007 :: 07:36:
Uzhast писал(а) 06. Ноября 2007 :: 07:32:
О, только сейчас заметил, что у тебя GOTO 1, а не GOTO TOP. А с GOTO TOP не заработает? Улыбка Вроде по МСДН должно сработать.

с GOTO TOP РАБОТАЕТ!

YEEEEEESSSS!  Улыбка  Очень довольный
  
Наверх
 
IP записан
 
Uzhast
1c++ power user
Отсутствует



Сообщений: 1341
Зарегистрирован: 30. Августа 2006
Пол: Мужской
Re: Провайдер OLE DB от VFP SP2
Ответ #38 - 06. Ноября 2007 :: 07:38
Печать  
Ну, OLE DB, погоди! Подмигивание
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Провайдер OLE DB от VFP SP2
Ответ #39 - 06. Ноября 2007 :: 07:46
Печать  
Uzhast писал(а) 06. Ноября 2007 :: 07:38:
Ну, OLE DB, погоди! Подмигивание

С нетерпением ждёмс Улыбка
  
Наверх
ICQ  
IP записан
 
kiruha
1c++ power user
Отсутствует



Сообщений: 1249
Зарегистрирован: 11. Апреля 2007
Re: Провайдер OLE DB от VFP SP2
Ответ #40 - 02. Декабря 2007 :: 11:49
Печать  
Хотелось бы узнать - новый провайдер был уже кем то испытан?
Можно его ставить в живую базу?
Какие то глюки не отмечены?
  
Наверх
 
IP записан
 
kiruha
1c++ power user
Отсутствует



Сообщений: 1249
Зарегистрирован: 11. Апреля 2007
Re: Провайдер OLE DB от VFP SP2
Ответ #41 - 22. Февраля 2008 :: 10:13
Печать  
На сайте
http://www.microsoft.com/downloads/details.aspx?FamilyId=E1A87D8F-2D58-491F-A0FA...

Официально выложена новая версия драйвера VFPOLEDB
Цитата:
"MICROSOFT OLE DB PROVIDER FOR VISUAL FOXPRO 9.0 SP2"

Цитата:
File Name:      VFPOLEDBSetup.msi
Version:      1.2
Date Published:      2/14/2008



И теперь это файл msi а не exe
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 2 [3] 
ОтправитьПечать