Базы данных

Содержание

Слайд 2

План занятия (часть 1): Методы хранения данных ("Ретроспектива"). Переменные runtime -

План занятия (часть 1):

Методы хранения данных ("Ретроспектива"). 
    Переменные runtime - именованные

области памяти (в ОЗУ). 
    Индексные и ассоциативные массивы.
    Хэш (Hash) - хранилище неупорядоченных пар (записей) “ключ - значение”.
    Коллекция (Collection) - класс-обертка для ассоциативных массивов в VBA.
    Применение ini-файла для хранения неупорядоченных записей.
    Размещение объектов в памяти и сериализация (Serialize) для сохранения 
    состояния.
Естественная иерархия в ООП и методы ее представления 
    с помощью сериализации и иерархических связей записей за счет ключа.

Информатика. 2 семестр. Тема 09. Базы данных

Слайд 3

План занятия (часть 2): Хранение структурированных данных, иерархия свойств. Хранение структурированных

План занятия (часть 2):

Хранение структурированных данных, иерархия свойств. 
    Хранение структурированных данных

в типизированных файлах VBA.
    Применение секций в ini-файлах для реализации двухуровневой иерархии. 
    Использование фигурных скобок для определения вложенности (язык - Tcl).
    Представление иерархии свойств с помощью метаязыков на примере XML.
    Задание иерархии за счет составного имени переменной (ключа).
    Естественная поддержка иерархии в файловой системе. Применение VFS.  
    Объектно-ориентированные базы данных, хранение полной информации 
    об объектах, включая методы и поддержку обработки событий.
    Реляционные базы данных и их использование для хранения коллекций 
    атрибутов объектов одного типа.

Информатика. 2 семестр. Тема 09. Базы данных

Слайд 4

План занятия (часть 3): Работа с реляционными БД из VBA. Взаимодействие

План занятия (часть 3):

Работа с реляционными БД из VBA. Взаимодействие с

СУБД. 
    Современная модель хранения и обработки данных с помощью СУБД.
    Реляционные БД. Иерархия БД-таблица-запись-поле(имя)-значение. 
    Применение ключа, как основной метод доступа (поиска) к нужной записи.
    Использование значений из полей записи в условии отбора. 
    Типизированный файл - простейшая программная имитация реляционной БД.    
    “Квазифайловые” базы данных Paradox (БД = папка, таблица = файл). 
    Доступ к базе данных через СУБД. Стандартизация методов доступа.
    Технологии DAO, ODBC и язык SQL. 
    ADO (ActiveX Data Object) - объектная “обертка” для работы с СУБД.
    Подключение к СУБД из программы на VBA. Выполнение запросов.
    Применение компонент, информированных о данных.

Информатика. 2 семестр. Тема 09. Базы данных

Слайд 5

Методы хранения данных ("Ретроспектива") Переменные runtime - именованные области памяти (в

Методы хранения данных ("Ретроспектива")

Переменные runtime - именованные области памяти (в ОЗУ). 

Размещение

простых и сложных типов данных в памяти (уровень менеджера памяти).

Runtime - состояние, когда программа
выполняется

Простые

Имя (адрес)

Составные

Значение

Имя (адрес)

Значение

Значение

b = a + c

число

b:

b:

Объект

Адрес

Значение

строка

Информатика. 2 семестр. Тема 09. Базы данных

Слайд 6

Индексные и ассоциативные массивы. Индексный Ассоциативный Реализация в Visual Basic for

Индексные и ассоциативные массивы.

Индексный

Ассоциативный

Реализация в Visual Basic for Application

Класс Collection
Коллекция разнородных

элементов (чисел, строк, объектов)

Методы:
    .Add    "one"   ' добавить только значение, доступ - по индексу
    .Add "two", "second"    ' добавить пару, доступ - по ключу "second"

Информатика. 2 семестр. Тема 09. Базы данных

Слайд 7

Работа с реляционными БД из VBA. Взаимодействие с СУБД. Доступ к

Работа с реляционными БД из VBA. Взаимодействие с СУБД.

Доступ к базе

данных через СУБД. Стандартизация методов доступа.
Технологии DAO, ODBC и язык SQL.

ODBC (Open Database Connectivity) — 
это программный интерфейс (API) доступа к базам данных, разработанный фирмой Microsoft, в сотрудничестве с Simba Technologies на основе спецификаций Call Level Interface (CLI),  который разрабатывался организациями SQL Access Group, X/Open и Microsoft. 
Впоследствии CLI был стандартизован ISO/IEC 9075-3:2003. Стандарт CLI призван унифицировать программное взаимодействие с СУБД, сделать его независимым от поставщика СУБД и программно-аппаратной платформы.

DAO (Data Access Objects) — технология доступа к данным компании Microsoft.
DAO 1.0 появилась в ноябре 1992 года как API для работы с СУБД Jet. Технология Jet поддерживала доступ к файлам формата MDB (Microsoft Access), ODBC-источникам данных и к источникам данных ISAM. Начиная с версии 3.1 появилась возможность использовать API DAO, не используя при этом СУБД Jet (технология ODBC Direct). 

Информатика. 2 семестр. Тема 09. Базы данных

ADO (ActiveX Data Objects — «объекты данных ActiveX») — интерфейс программирования приложений для доступа к данным, разработанный компанией Microsoft (MS Access, MS SQL Server) и основанный на технологии компонентов ActiveX. ADO позволяет представлять данные из разнообразных источников (реляционных баз данных, текстовых файлов и т. д.) в объектно-ориентированном виде.

Слайд 8

Технология взаимодействия с СУБД через ADO Доступ к базе данных через

Технология взаимодействия с СУБД через ADO

Доступ к базе данных через СУБД.

Стандартизация методов доступа.
Технологии DAO, ODBC и язык SQL.

Информатика. 2 семестр. Тема 09. Базы данных

Среда передачи данных

СУБД

БД

API JET

code

connection

recordset

fields()

ADO

Слайд 9

Подключение базе данных Информатика. 2 семестр. Тема 09. Базы данных Подключение поддержки ADO

Подключение базе данных

Информатика. 2 семестр. Тема 09. Базы данных

Подключение поддержки ADO

Слайд 10

Взаимодействие с СУБД Информатика. 2 семестр. Тема 09. Базы данных Provider=Microsoft.ACE.OLEDB.12.0 Data Source=C:\work\WorkshopDB.accdb Persist Security Info=False

Взаимодействие с СУБД

Информатика. 2 семестр. Тема 09. Базы данных

Provider=Microsoft.ACE.OLEDB.12.0
Data Source=C:\work\WorkshopDB.accdb
Persist Security

Info=False
Слайд 11

Взаимодействие с СУБД Информатика. 2 семестр. Тема 09. Базы данных Private

Взаимодействие с СУБД

Информатика. 2 семестр. Тема 09. Базы данных

Private Sub CommandButton1_Click()

Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim conn As String
Dim sql As String
conn = "Provider=Microsoft.ACE.OLEDB.12.0;" & _
"Data Source=C:\work\WorkshopDB.accdb;" & _
"Persist Security Info=False"
sql = "SELECT * FROM table1;"
Set cn = New ADODB.Connection
cn.ConnectionString = conn
cn.Open
Set rs = New ADODB.Recordset
rs.Open sql, cn, adOpenDynamic, adLockOptimistic
TextBox2.Text = Str(rs.Fields.Count)
rs.Close
cn.Close
Set rs = Nothing
Set cn = Nothing
End Sub
Слайд 12

Необходимые методы для работы с СУБД Информатика. 2 семестр. Тема 09.

Необходимые методы для работы с СУБД

Информатика. 2 семестр. Тема 09. Базы

данных

cn.Open
cn.Close
rs.Open
rs.Close
rs.MoveFirst
rs.MoveNext
rs.Fields.Count
rs.Fields()
rs.EOF
rs.Execute

Слайд 13

Пример считывания таблицы на рабочий лист Информатика. 2 семестр. Тема 09.

Пример считывания таблицы на рабочий лист

Информатика. 2 семестр. Тема 09. Базы

данных


rs.Open sql, cn, adOpenDynamic, adLockOptimisticrs.Close
rs.MoveFirst
J = J + 1
WHILE NOT(rs.EOF)
FOR I = 0 TO rs.Fields.Count - 1
Cells(J, I+1).Value = rs.Fields(I)
NEXT I
J = J + 1
rs.MoveNext
WEND