Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: VB.NET & adodb Добавлено: 03.09.02 12:21  

Автор вопроса:  Блаш

Таваризчи! При попытке компиления кода содержащего

dim oCon as new adodb.connection

вылазит:

-----------------------------------------------------------------------------

'Tablettor.exe': Loaded 'c:\winnt\assembly\gac\adodb\7.0.3300.0__b03f5f7f11d50a3a\adodb.dll', No symbols loaded.

An unhandled exception of type 'System.Runtime.InteropServices.COMException' occurred in Tablettor.exe

Additional information: Требуемый класс отсутствует в ClassFactory

-----------------------------------------------------------------------------

причём если слова new нет, то ошибка не происходит.

VB.NET семидисковая версия мирно сосуществовал рядом с VB6 который недавно стёрт за недостатком места. Однако, по идее, adodb из списка NET компонентов и не является куском VB6

В чём причина трабла?

Ответить

  Ответы Всего ответов: 7  

Номер ответа: 1
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #1
Добавлено: 03.09.02 16:03
Не .NET, а Com. Советую пользоваться ADO .NET. Тогда подобных проблоем не будет.

Ответить

Номер ответа: 2
Автор ответа:
 Блаш



Вопросов: 10
Ответов: 30
 Профиль | | #2 Добавлено: 03.09.02 18:17

ADO.NET это круто конешно, но сама мелкософт, я так слышал, рекомендует использовать его для сайтов, а для обычных баз - ADO т.к. ADO.NET юзает режим при котором клиент с сервером не держат постоянного коннекта, что тормозит дело.

По сему таки хотелось бы уяснить причины трабл, ну хоть из принципа!

Ответить

Номер ответа: 3
Автор ответа:
 Гибыч



Вопросов: 1
Ответов: 58
 Профиль | | #3 Добавлено: 04.09.02 09:25

Где ты видел данное заявление микрософта? мона ссылочку...

Ежли надобно прямой коннект, то для ентого используется DataReader...

Ответить

Номер ответа: 4
Автор ответа:
 Блаш



Вопросов: 10
Ответов: 30
 Профиль | | #4 Добавлено: 07.09.02 09:52

На косвенных ссылках я это видел, не на прямую у Микрософта. Да и вообще, то по моей информации, я же говорил.

За совет спасибо, попрбую DataReader.

Ответить

Номер ответа: 5
Автор ответа:
 Блаш



Вопросов: 10
Ответов: 30
 Профиль | | #5 Добавлено: 07.09.02 16:37

Кстати, Грибыч, я вот что-то не обнаружил у OleDbDataReader особых способностей работать с поддержкой канала. Или таки ты о каком то другом ридере?

У OleDbDataReader нет никаких методов обеспечивающих перемещение по гхм... назовём это привычно - рекордсетом, дык говорю нет у него таких методов, и вообще, для полноценной работы он не годится - только однократное прочтение данных из рекордсета и потом его снова надо переподключать если надо будет прочесть его заново - никакого сходства с работой старого ADO.

Короче, ты ошибся ИМХО.

Ответить

Номер ответа: 6
Автор ответа:
 Гибыч



Вопросов: 1
Ответов: 58
 Профиль | | #6 Добавлено: 10.09.02 16:01

OleDbDataReader Class 

... skip ...

Remarks

To create an OleDbDataReader, you must call the ExecuteReader method of the OleDbCommand object, rather than directly using a constructor.

While the OleDbDataReader is in use, the associated OleDbConnection is busy serving the OleDbDataReader, and no other operations can be performed on the OleDbConnection other than closing it. This is the case until the Close method of the OleDbDataReader is called. For example, you cannot retrieve output parameters until after you call Close.

Changes made to a resultset by another process or thread while data is being read may be visible to the user of the OleDbDataReader. However, the precise behavior is timing dependent.

IsClosed and RecordsAffected are the only properties that you can call after the OleDbDataReader is closed. Though the RecordsAffected property may be accessed at any time while the OleDbDataReader exists, always call Close before returning the value of RecordsAffected to ensure an accurate return value.

... skip ...

Так вот там сказано что он держит коннект, единственно это кнешно форвард-онли чтение вперед... ежели тебе будет нужно более широкий спектр манипуляций с табличкой, то лучше есесно пользовать ДатаСет... он чуть чуть побольше... но потому и побольше ДатаРидера, что у него гораздо больше возможностей...

Ответить

Номер ответа: 7
Автор ответа:
 Блаш



Вопросов: 10
Ответов: 30
 Профиль | | #7 Добавлено: 10.09.02 16:50

Ну дык о том и разговор, что аналогом рекордсета из ADO он служить не может :(

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам