Смекни!
smekni.com

Visual C++. Бази даних Укр. (стр. 1 из 7)

Національний університет “Києво-Могилянська Академія”

Курсова робота

на тему:

Visual C++. Бази даних.

Студентки 4-го курсу

департаменту

комп’ютерних технологій

Фіялка Світлани

Науковий керівник:

Спасітєлєва С.О.

Київ-1999

Зміст:

Вступ

Програмування баз даних за допомогою ODBC

Архітектура ODBC

Концепції API ODBC

Блок-схема типової ODBC-програми

Програма установки ODBC

Приклад програми ODBC

Стандарт SQL та ODBC

ODBC в MFS-застосуваннях

Створення структури застосування за допомогою AppWizard

Об’єкти доступу до даних (DAO

Класи DAO

Побудова застосування DAO

Візуальні інструменти баз даних

Висновки

Вступ .

В першу чергу Visual C++ - це компілятор C++, але це також і середовище, компоненти якого, взаємодіючи один з одним, спрощують процес розробки застосувань. Середовище Visual C++ пропонує великі можливості для програмування Windows-застосувань. Найхарактернішою його компонентою є бібліотека основних класів Microsoft (Microsoft Foundation Classes – MFS). Великий набір класів С++ інкапсулює основну частину API (Application Standart Interface) Win32 і пропонує могутню основу для написання типових застосувань. До складу Visual C++ входить Microsoft Developer Studio Integrated Development Environment – інтегроване середовище для розробки застосувань (IDE). Visual Studio 97 – остання версія Microsoft Developer Studio – є ядром системи розробки Visual C++. Вона пропонує багато різних можливостей, надає доступ до багатьох компонент системи розроблювача Visual C++, а також взаємодіє з такими засобами розробки Micrisoft, як Visual J++ або Microsoft Network Library. Visual Studio підтримує інтерфейс для компонентів проектів, початкових файлів і файлів ресурсів, а також ряд інструментів для побудови, запуску і тестування застосувань, хоча компілятор C/C++ та інші компоненти середовища розробника можна використовувати і з командного рядка. Visual Studio пропонує інтегрований інтерфейс для таких основних інструментів Visual C++ як майстри. Майстри (Wizards), такі як AppWizard, - це інструменти генерації структур застосувань. За допомогою таких майстрів можна створювати структури застосувань серверів або контейнерів компонентів OLE, застосувань ODBC та DAO, серверів автоматизації, елементів управління ActiveX.

Visual C++ пропонує широкі можливості для програмування баз даних, які, зокрема, полягають в розширеному керуванні джерел даних і відладці. В застосуваннях можна використовувати декілька технологій баз даних: ODBC(Open Database Connectivity) - Зв’язок відкритих баз даних, незалежний від постачальника механізм доступу до даних з різних джерел, DAO(Data Access Objects) – Об’єкти доступу до даних, застосовується для доступу к базам даних в Microsoft Visual Basic, Microsoft Access, Visual Basic for Applications, ADO (ActiveX Data Objects) – компактна технологія доступу до даних, орієнтована на Web, OLE DB – база даних OLE, набір специфікацій інтерфейсів компонентної об’єктної моделі COM.

Метою даної курсової роботи є розгляд основних можливостей програмування баз даних в Visual C++, зокрема використовуючи ODBC та DAO.

Програмування баз даних за допомогою ODBC.

ODBC або Open Database Connectivity (Зв’язок відкритих баз даних) – незалежний від постачальника механізм доступу до даних з різних джерел. Він є реалізацією специфікацій X/Open та SAG CLI (SQL Access Group Call Level Interface) – інтерфейс рівня виклику групи доступу SQL, яку виконала фірма Microsoft. ODBC пропонує функції для взаємодії з базами даних за допомогою мови програмування, наприклад, додавання, модифікування і видалення даних, отримання службової інформації про базу даних, таблиці та індекси.

Архітектура ODBC.

Архітектура ODBC складається з п’яти основних рівнів:прикладний рівень, інтерфейс ODBC, диспетчер драйверів, драйвер та джерело даних.

Прикладний рівень реалізує GUI (Graphical User Interface – Графічний інтерфейс користувача) та бізнес-логіку. Він написаний на мові програмування, такій як Java, Visual Basic або C++. Прикладна програма використовує функції з інтерфейсу ODBC для взаємодії з базами даних.

Диспетчер драйверів є частиною ODBC Microsoft. Він керує різними драйверами, що знаходяться в системі, виконуючи завантаження, спрямування викликів на потрібний драйвер і надання прикладній програмі інформації про драйвер, коли це необхідно. Оскільки одна прикладна програма може бути зв’язана з декількома базами даних, то диспетчер драйверів гарантує, що відповідна система керування базою даних отримує всі запити, що надходять до неї, та що всі дані з джерела даних будуть передані прикладній програмі.

Драйвер – та частина архітектури, яка все знає про будь-яку базу даних. Система драйверів ODBC працює не лише на платформі WINDOWS, але і на інших, зокрема UNIX, що перетворює API ODBC на могутній інструмент для створення платформно-незалежних застосувань. Крім того ODBC приводить використовуємий в застосуванні синтаксис SQL до єдиного стандарту, що дозволяє розробляти застосування незалежні від вида бази даних. Звичайно драйвер пов’язаний з конкретною базою даних, наприклад, драйвери Access, Oracle та драйвер SQL Server. Інтерфейс ODBC має набір функцій, таких як оператори SQL, управління з’єднанням, інформація про базу даних тощо. В обов’язки драйвера входить їх реалізація. Це означає, що в деяких базах даних драйвер повинен емулювати функції інтерфейсу ODBC, які не підтримуються системою керування базою даних. Він виконує роботу по розсиланню запитів в бази даних, отриманню відповідей і відправленню їх прикладній програмі. Для баз даних, що працюють в локальних мережах або Internet, драйвер підтримує мережний зв’язок.

Джерело даних в контексті ODBC може бути системою керування базою даних або просто набором файлів на жорсткому диску. Він може бути як простою базою даних Microsoft Access для невеликої фірми, так і багатосерверним зберігачем інформації про клієнтів телефонної компанії і їх розмовах.

Коцепції API ODBC.

Основною частиною системи ODBC є драйвер. Драйвери можуть бути однорівневі та багаторівневі. Однорівневі драйвери обробляють звертання ODBC і оператори SQL, а багаторівневі – обробляють звертання ODBC та передають оператори SQL джерелу даних (можливо, серверу, розташованому де-небудь в мережі). ODBC не вимагає, щоб драйвери підтримували всі функції цього інтерфейсу. Замість цього для драйверів визначаються рівні відповідності API та граматики SQL. Єдина вимога: якщо драйвер задовільняє деякому рівню, то він повинен підтримувати всі функції ODBC, визначені на цьому рівні, незалежно від того, чи підтримує їх база даних. Так як в обов’язки драйвера входить емуляція функцій ODBC, що не підтримуються системою керування базою даних, то інтерфейс ODBC не залежить від реалізації бази даних.

Рівні відповідності API та граматики SQL для ODBC.

Тип Рівень відповідності
Опис
РівнівідповідностіAPI Ядро Всі функції із специфікації SAG CLI. Виділення і звільнення описувачів зв’язку, SQL-оператора і оточення. Підготовка і виконання операторівSQL. Отримання результату і службової інформації про результат. Отримання інформації про помилки. Здатність виконувати транзанкції.
Рівень 1 Розширений набір 1 включає API ядра плюс можливості посилати і отримувати часткові набори даних, шукати інформацію в каталозі,отримувати інформацію про можливості драйвера і бази даних, тощо.
Рівень 2 Розширений набір 2 включає рівень 1 плюс можливості обробляти масиви як параметри, можливість прокрутки курсору, виклик DLLтранзанкцій, тощо.
РівнівідповідностіграматикиSQL Мінімальнаграматика Функції створення і видалення таблиць в мові визначення даних. Прості функції вибору, вставки, модифікації і видалення в мові маніпулювання даними. Прості вирази.
Граматика ядра Відповідність специфікаціям SAG CAE 1992 на мінімальну граматику плюс зміна таблиць, створення і видалення індексу, створення і видалення логічних таблиць бази даних для DLL. Повний оператор SELECT для DDL. Повний Оператор SELECT для DML. Функціїї в виразах, наприклад, SUM and MAX.
Розширена граматика Додаткові можливості, такі як зовнішні з’єднання, позиційовані модифікація і видалення, більше виразів і типів даних, виклики процедур.

ODBC не є еквівалентом Embedded SQL (Вбудований SQL), який використовує оператори SQL в вихідних програмах, написаних на інших мовах. Схожі гібрідні програми перед передечею компілятору основної мови програмування оброблюються прекомпілятором. ODBC інтерпретує оператори SQL під час виконання. Основна програма не потребує прекомпіляції для виконання різних операторів SQL, як і не треба компілювати окремі версії програми для різних джерел даних.

Блок-схема типової ODBC-програми.

Перш ніж реалізувати оператори SQL, застосування ODBC повинно виконати ряд дій, щоб під’єднатись до джерела даних. Типові дії звертання ODBC:

SQLAllocEnv(); Виділяє середовище ODBC

SQLAllocConnect(); Виділяє пам’ять для підключення

SQLConnect(); Завантажує драйвер, підключає до джерела
SQLAllocStmt(); Виділяє пам’ять для оператора SQL

SQLFreeStmt(); Звільнює пам’ять, виділену для оператора