Бутон за раздел Достъп до ADO

Преместих приложението си за достъп от DAO в ADO връзка. Работи по-добре, но срещам проблем, когато въвеждам стойност в полето на формуляр, след което натискам бутона за раздел, екранът ме отвежда до първите полета на формуляра и губя своя активен контрол, който е контролът на полето, в което аз въведете стойността. N.B.: Ако щракна върху курсора с мишката след прилагане на стойността в посоченото поле, той работи правилно...

Всяка помощ ще бъде високо оценена


person CREFLY    schedule 21.05.2010    source източник
comment
Просто съм любопитен, как вашето приложение работи по-добре с ADO? Какви предимства получихте?   -  person Tony Toews    schedule 24.05.2010
comment
Можете ли да покажете какви събития използвате в полето на формуляра? Ако има такива, моля, покажете ни кода.   -  person hgulyan    schedule 04.06.2010


Отговори (1)


Винаги съм намирал ADO за по-добър, по-прост и по-бърз код от DAO.

Dim rst as new ADODB.recordset
rst.open "Select * from employees", CnnString

Искам да кажа-- това е просто по-малко многословно от това, от което се нуждаете в DAO.

person Aaron Kempf    schedule 22.03.2011
comment
Как това е по-просто от DAO? Мога да направя това в DAO: lngNewID = CurrentDB.OpenRecordset("SELECT @@IDENDITY")(0) -- това е един ред код, докато вашият е два. Мога да отворя DAO набор от записи в два реда код, също: Dim rs As DAO.Recordset / Set rs = DBEngine(0)(0).OpenRecordset("SELECT * FROM employees;"). DAO и ADO са различни по начина, по който правите нещата, но нито един от тях не е повече или по-малко многословен от другия. Ключовата разлика е, че когато работите с Jet/ACE данни, DAO е директен интерфейс, естественият интерфейс, поддържа повече функции и е по-бърз. - person David-W-Fenton; 24.03.2011
comment
Когато работите с данни, различни от Jet/ACE, комбинацията от производителност/функции може или не може да бъде напълно различна. И ние програмираме извън Access, много вероятно ще бъде по-лесно да използваме ADO/OLEDB. - person David-W-Fenton; 24.03.2011