Страннвя работа Recordset

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
SKYS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 68
Зарегистрирован: 21.09.2007 (Пт) 8:31
Откуда: г.Кемерово

Страннвя работа Recordset

Сообщение SKYS » 01.10.2007 (Пн) 5:20

Код: Выделить всё
con = "select nd3gtd.nogtd,nd3gtd.stgtd,nd3tdoc.notd,nd3tdoct.nattd,nd3kontr.nok,nd3exp.name_decl,nd3kontrt.kolt,nd3tdocp.nameptd  from nd3exp,nd3kontr,nd3gtd,nd3tdoc,nd3tdoct , nd3tdocp, nd3kontrt where nd3kontr.unic_kn=nd3tdoc.to_kon_t and nd3kontr.unic_kn=nd3gtd.to_kon_g and nd3tdoc.unic_t=nd3tdoct.unic_tt and nd3exp.unic_ex=nd3kontr.to_exp_kn  order by  nd3gtd.nogtd,nd3tdoc.notd"
str5 = "Driver={Microsoft Paradox Driver (*.db )};DriverID=538;Fil=Paradox 5.X;DefaultDir=d:\;dbq=d:\ПИК НДС\ddb;CollatingSequence=ASCII;"""
ad.Open str5
rs.Open con, ad, adOpenStatic, adLockBatchOptimistic


Имеется вот такая лабудень :shock: Запрос выполняется долго но основное дело в том что при выполнение этого запроса пропадает место на диске C: причем от 500 до 900 mb в чем дело Я идиот! Убейте меня, кто-нибудь!????

Подобный запрос если его выполнять через контрол Adodc нормально выполняется а когда сам создаеш то фигня получается
Хорошо когда не знаеш да еще забудеш !!!!

SKYS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 68
Зарегистрирован: 21.09.2007 (Пт) 8:31
Откуда: г.Кемерово

Сообщение SKYS » 01.10.2007 (Пн) 7:28

На диске c: было свободно 1.5 gb съел все файл jet**** .tmp как так ???? файл создается во время запуска процесса.
Хорошо когда не знаеш да еще забудеш !!!!

HandKot
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 283
Зарегистрирован: 28.06.2006 (Ср) 13:34
Откуда: Sergiev Posad

Сообщение HandKot » 01.10.2007 (Пн) 8:27

не уверен, но, если кол-во строк, получаемых рекордсетом, большое
1) уменьшить кол-во строк (добавить условие WHERE)
2) уменьшить кол-во столбцов в выборке
3) заменить у рекордсета adLockBatchOptimistic на adForwardOnly (не всегда удобно)
4) установить расположение курсора на adUseServer (не всегда удобно)
5) возможно Вы не закрываете рекордсет
I Have Nine Lives You Have One Only
THINK!


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 46

    TopList