:: Меню ::

Головна
  • Про сайт
  • Введення
  • Середовище програмування VB .NET: Visual Studio .NET
  • Вирази, оператори і передача управління
  • Класи і об'єкти
  •  Спадкоємство і інтерфейси
  • Обробка подій і делегати
  • Обробка помилок в VB .NET
  • Форми Windows, графічний вивід і друк
  • Уведення-виведення
  •  Багатопотокові застосування
  • Підтримка баз-даних в VB .NET
  • Короткий огляд ASP .NET
  • Складки .NET, установка додатків і COM Interop
  • Книга для гостей
    Контакти
    Добавити у вибране

    :: Друзі ::

     
     

    :: Лічильники ::

    = =

     

     

     

     

    Підтримка баз даних в VB .NET

    • Чому ADO .NET — не Ado++
    • Автономні набори даних: новий підхід до роботи з базами даних
    • Класи збірки System.Data.DLL
    • Простір імен System.Data.OleDb
    • System.Data.SqlClient
    • Виклик процедури, що зберігається
    • Нетривіальний приклад роботи з базами даних в VB .NET

    Такий короткий розділ був написаний з єдиною метою — орієнтувати читача в потрібному напрямі. Її обмежений об'єм не дозволить нам навіть у загальних рисах представити всі засоби для роботи з базами даних в VB .NET (не говорячи вже про їх змістовне обговорення).

    Щоб побачити, як працюють елементи, пов'язані з даними (data-bound controls), скористайтеся майстром Data Form Wizard. Проглядання коди, що згенерувала цією програмою, допоможе вам більше дізнатися про можливості VB. NET в області роботи з базами даних.

    Чому ADO .NET — не Ado++

    У кожній з попередніх версій VB з'являлася нова модель підтримки баз даних. VB .NET слідує цій давній традиції і представляє новий спосіб роботи з даними — ADO .NET. При найближчому розгляді з'ясовується, що назва вибрана украй невдало. Чому? Тому що ADO .NET просто не є наступним поколінням ADO! Це абсолютно нова модель, що не має нічого загального з класичним варіантом ADO. Зокрема, для роботи з результатами вам доведеться освоїти нову об'єктну модель, засновану на об'єкті Dataset (об'єкт ADO .NET Dataset не прив'язаний до однієї таблиці і тому володіє значно великими можливостями, чим, наприклад, об'єкт ADO Recordset). Крім того, модель ADO .NET:

    • проектувалася як модель з поліостью автономною архітектурою (хоча класи Dataadapter, Connection, Command і Datareader залишаються орієнтованими на з'єднання);.
    • не підтримує курсори на стороні сервера. Динамічні курсори ADO в ній не підтримуються;
    • базується на мові XML [ У внутрішньому представленні класів ADO .NET використовується оптимізований формат, але весь обмін даними відбувається у форматі XML. ] (що дозволяє працювати через інтернет, навіть якщо клієнт знаходиться за. брандмауером (firewall));
    • входить в збірку .NET System. Data. DLL, а не реалізується на рівні мови;
    • навряд чи підтримуватиме старі клієнти Windows 95.

    Ще одна цікава особливість ADO .NET полягає в тому, що для таких важливих засобів, як двофазна актуалізація даних (commit), потрібно буде використовувати Enterprise Services (тобто фактично Com+/mts з .NET-оболочкой).

    Автономні набори даних: новий підхід до роботи з базами даних

    У Vb6 типове застосування, що використало бази даних, відкривало з'єднання з базою і використовувало його для всіх запитів впродовж життєвого циклу програми. У VB .NET доступ до баз даних засобами ADO .NET зазвичай заснований на автономних (від'єднаних) операціях. За цим високопарним виразом криється простий сенс: в більшості випадків після вибірки даних з бази з'єднання розривається. У ADO .NET постійний зв'язок з джерелом даних зустрічається дуже рідко (за бажання ви можете використовувати постійні з'єднання класичної моделі ADO, удавшись до послуг .NET COM Interop, проте при цьому неминуче виникають проблеми масштабованості, відвіку властиві ADO).

    Оскільки програма зазвичай працює з автономними даними, типовому застосуванню .NET для обробки кожного запиту доводиться наново підключатися до бази даних. На перший погляд це здається великим кроком назад, але таке враження брехливе. Старий спосіб підтримки з'єднань погано підходить для світу розподілених систем: якщо ваше застосування відкриває з'єднання з базою даних і залишає його відкритим, серверу доводиться підтримувати це з'єднання до тих пір, поки клієнт його не закриє. Враховуючи інтенсивне завантаження сучасних серверів і пересилку величезних об'ємів даних, підтримка всіх клієнтських з'єднань негативно позначається на пропускній спроможності сервера.

    Крім того, в web-комплексах [ Web-комплексом називається група комп'ютерів, оброблювальних трафік одного URL. Більшість крупних сайтів обслуговуються web-комплексами, що забезпечують ефективніший розподіл навантаження. ](Web farm) запити можуть оброблятися різними комп'ютерами. Постійні з'єднання з web-комплексами даремні, оскільки ви не знаєте, який сервер оброблятиме подальші запити.

    Класи збірки System.Data.DLL

    Збірка System.Data.DLL містить велику кількість класів, розділених на п'ять просторів імен роботи з даними з додатковим простором

    System.Xml. Допоміжний простір System.Data.SqlTypes містить структурні типи, відповідні типам даних SQL Server (наприклад, Sql Money і Sqldatetime).

    Оскільки типи даних SQL реалізовані у вигляді структурних типів, їх перетворення відрізняються більшою ефективністю в порівнянні з іншими мовами — наприклад, в порівнянні з Java, де типи SQL реалізовані у вигляді посилальних типів.

    Інший допоміжний простір імен, System.Data .Common, містить класи, часто використовувані при зверненнях до джерела даних. У цьому розділі основна увага приділяється просторам імен System. Data.OleDb і System. Data. Sqlclient, що виконує безпосередню роботу. Класи цих просторів імен використовують засоби System. Data. Common, включаючи клас Dataadapter. Клас Dataadapter представляє з'єднання з базою даних, використовуване при заповненні набору даних або оновленні джерела, а також деякі стандартні команди при операціях з базами даних.

    Простори імен System.Data.OleDb і System.Data.SqtCLient володіють схожою функціональністю, з одним виключенням — класи System.Data.OleOb призначені для підключення до джерел даних OLE DB, а класи System.Data.SqlCHent орієнтовані на Microsoft SQL Server версії 7 і вище.

     




    :: Наша кнопка ::

    Отримати код:

    Підтримайте наш сайт і розмістіть нашу кнопку на своєму ресурсі.


    :: Реклама ::

    Скачати безкоштовно програму Microsoft Front Page 2003


    :: Посилання ::

    -


     

     

     


    Copyright ©