Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.02.28;
Скачать: [xml.tar.bz2];

Вниз

Проблемы с ADO2.5   Найти похожие ветки 

 
a_k_v   (2002-01-29 09:00) [0]

Вот пытаюсь работать с ADO 2.5, импортировал библиотеку типов, создал connection и recordSet, обрабатываю запросы по 500 записей
но встал перед проблемой при длительной работе проги она существенно начинает пожирать витруальную память, отсюда вопрос
как правильно работать с recordSet и connection?
я делаю вот так:

var // глобальные переменные модуля
conODBC: Connection;
adoRS: RecordSet;
...
begin // тело проблемной процедуры
strAccessConnect := "File name=" + sDNSRosar;
conODBC := CoConnection.Create;
conODBC.Open(strAccessConnect, "kill","smart",0);
strQuery := "SELECT * FROM [Beer parameters] WHERE
[Program number]=" + IntToStr(iProgram) + " AND
[Beer number]= " + IntToStr(iBeer) + " ORDER BY
[Step number] ASC";
adoRS := CoRecordset.Create;
adoRS.Open(strQuery, conODBC, adOpenStatic,
adLockReadOnly, adCmdText);
adoRS.MoveFirst;
While adoRS.EOF <> True do
begin
iStep := adoRS.Fields.Item[2].value;
For k := 0 To 11 do
begin
iCounterR := (iStep * 12) + k;
If adoRS.Fields.Item[k * 5 + 7].value = True Then
rRealValues[iCounterR] :=
adoRS.Fields.Item[k * 5 + 5].value;
end;
adoRS.MoveNext
end;
adoRS.Close;
adoRS := nil;
conODBC.Close;
conODBC := nil;
end;

Скажите в чем я не прав?


 
Fay   (2002-01-29 12:01) [1]

conODBC: Connection;
adoRS: RecordSet;
Кто такие Connection и Recordset?


 
Delirium   (2002-01-29 12:09) [2]

ОDBC никакого отношения к ADO-шному Connection не имеет,
тут важен единственный параметр - ConnectionString.
Для MDB он такой :

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\db1.mdb;Persist Security Info=False

Но я бы посоветовал, не пытаться изобретать велосипед с импортом типов, а поставить себе D6 - там всё есть и работает безглючно.


 
a_k_v   (2002-01-29 12:47) [3]

2Fay:
Connection и Recordset это CoClasses из библиотеки типов для ADO 2.5, которые предоставляют дают мне доступ к Access таблицам (прописано в dsn) через ODBC Microsoft Access Driver а я собственнно пытаюсь напрямую работать с mdb таблицами, не используя средства Delphi 5, 6 для работы с ADO и сторонние компоненты.


 
a_k_v   (2002-01-29 12:55) [4]

2Delirium
Я не думаю, что работа с ADO через имортированные интерфейсы
есть изобретение велосипеда, и что приведенный мной код намного сложнее того который я бы получил используя сторонние средства или средства D5, D6


 
Delirium   (2002-01-29 13:06) [5]

Просто в D5 и D6 уже проведён импорт, посторены дополнительные классы, проведено сведение с TDataSet. Вот собственно, а переписывать заново, хотя бы переобразование типов данных - скажешь не "велосипед"?


 
a_k_v   (2002-01-29 13:30) [6]

2Delirium
Просто периодически приходится писать и сопровождать программы
не только на Delphi поэтому я отталкиваюсь от средств предоставляемых Microsoft и пытаяюсь унифицировать собственные приемы прогоаммирования, а что касается средств D5 и D6 то если у меня ничего не выйдет, то обращусь к входящим в их состав исходникам или поставлю этих монстров, и посмотрю исчехнет ли проблемы в новой реализации.
а пока есть силы, время и пиво попробую покопать дальше


 
Delirium   (2002-01-29 13:52) [7]

Я думаю проще "копать", глядя на то, что уже сделано :)


 
andrucco   (2002-02-04 10:42) [8]

перекомпилил в D5 проблема вроде отпала, ни строчки кода не сменил.

Delphi - это полная ж..па, и сами Borlandы ур..ды.



 
Delirium   (2002-02-04 11:52) [9]

Кто-же тебя заставляет работать с Delphi, если всё так плохо? Переходи на VB :)



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.02.28;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.005 c
1-90558
Ирина
2002-02-11 18:20
2002.02.28
DLLка грохается на Free формы


4-90718
Грифон
2001-12-26 22:40
2002.02.28
Нестандартное окно


1-90553
Pete
2002-02-11 15:29
2002.02.28
Нужен компонент....


4-90701
Olgerd
2001-12-27 20:24
2002.02.28
Рвём коннект


7-90689
Мираж
2001-11-24 14:25
2002.02.28
Как сделать окно активным при резворачинании его из трея при помощи хука





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский