Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Как обойти SQL: Statement too long. (число прочтений - 4572 )
chicago
Senior Member
****
Отсутствует


1C++, I have nothing to
say more!

Сообщений: 316
Местоположение: Тернополь-Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Как обойти SQL: Statement too long.
20. Февраля 2007 :: 15:07
Печать  
При выполении не маленького запроса к ДБФ базе.
  
Наверх
ICQ  
IP записан
 
spock
1c++ developer
1c++ moderator
Отсутствует



Сообщений: 822
Местоположение: Новосибирск
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как обойти SQL: Statement too long.
Ответ #1 - 20. Февраля 2007 :: 16:03
Печать  
В IN очень много перечисленных элементов?
  
Наверх
ICQ  
IP записан
 
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как обойти SQL: Statement too long.
Ответ #2 - 20. Февраля 2007 :: 16:39
Печать  
Вот где описана ошибка и ее решение: http://foxclub.ru/rhproject/project/html/0bb1bcde-9289-4992-8b3b-6df637f44944.ht...
Но теперь стоит другой вопрос, = SYS(3055, 2000) надо писать в том же запросе что и основной запрос, но как и должно было быть OLE DB возвращает результат первого запроса. Как его заставить вернуть результато второго запроса (по типу SET NOCOUNT ON для SQL)?
  
Наверх
IP записан
 
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как обойти SQL: Statement too long.
Ответ #3 - 20. Февраля 2007 :: 16:41
Печать  
Также может кто в курсе, какой аналог ISNULL для VoxPro?
  
Наверх
IP записан
 
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как обойти SQL: Statement too long.
Ответ #4 - 20. Февраля 2007 :: 16:45
Печать  
pvase писал(а) 20. Февраля 2007 :: 16:41:
Также может кто в курсе, какой аналог ISNULL для VoxPro?

Туплю, по идее ISNULL для VF OLE DB также должен работать, вопрос снимается, но остается про SET NOCOUNT ON.
  
Наверх
IP записан
 
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как обойти SQL: Statement too long.
Ответ #5 - 21. Февраля 2007 :: 08:50
Печать  
Если не использовать CLOSE для соединения, то метод SYS() работает, но даже применив максимальное значение =SYS(3055,2040) - получаю вот такой результат: Insufficient stack space. Видимо придется переписывать запрос.
  
Наверх
IP записан
 
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как обойти SQL: Statement too long.
Ответ #6 - 21. Февраля 2007 :: 15:27
Печать  
Выполнение команды
Код
Выбрать все
=SYS(3055, 440) 

решило проблему (если ставить параметр болше то уже нехватает памяти под стек). Единственное замечание - надо обязателньо ставить VFP OLE DB SP1 провайдер (так как со старім 1С "уходит в себя" при этом говорит что недостаточно памяти).
  
Наверх
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как обойти SQL: Statement too long.
Ответ #7 - 22. Февраля 2007 :: 03:26
Печать  
А где брать этот SP1 ?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как обойти SQL: Statement too long.
Ответ #8 - 22. Февраля 2007 :: 06:42
Печать  
artbear писал(а) 22. Февраля 2007 :: 03:26:
А где брать этот SP1 ?


Поиск в msdn.microsoft.com по словам "Microsoft OLE DB Provider for Visual FoxPro 9.0 SP1".
Страничка для загрузки продуктов Foxpro: http://msdn2.microsoft.com/en-us/vfoxpro/bb190232.aspx
текущая ссылка для скачивания VFP OLE DB SP1:  http://download.microsoft.com/download/b/f/b/bfbfa4b8-7f91-4649-8dab-9a647636036...
  
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать