Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Плещёв ИП 2010-04-04 doc.doc
Скачиваний:
108
Добавлен:
13.05.2015
Размер:
5.96 Mб
Скачать

9.9.5. Копирование набора в двумерный массив (GetRows)

Для копирования в ADOиDAOиспользуется методGetRows [(n)], ко­торый возвра­щает двумерный массив типаVariant(k,n). Первый индекс определяет по­ле, второй ‑ строку. По умолчанию копируется весь набор.

Примерформирования массива из таблицы “Заказчики” и его вывод.

Private Sub Command7_Click() ‘процедура копирования набора

Dim Cn As New ADODB.Connection, Rs As New ADODB.RecordSet

Dim i As Integer, j As Integer, Massiv As Variant 'массив для копирования

Cn.Open “DSN=Строительство“ 'установка связи через DSN-имя

Rs.Open “Заказчики“, Cn, adOpenForwardOnly, adLockReadOnly 'открытие

Rs.Fields.Refresh: Rs.MoveFirst: Massiv = Rs.GetRows 'копирование набора

Rs.Close: Set Rs = Nothing: Cn.Close: Set Cn = Nothing ‘закрытие базы

For j = 0 To UBound(Massiv, 2) ‘цикл чтения строк таблицы

For i=0 To UBound(Massiv, 1): Debug.Print Massiv(i, j); “ “; : Next ‘вывод полей

Debug.Print ‘переход на следующую строку

Next ‘конец цикла чтения строк таблицы

End Sub

9.10. Создание запросов с использованием конструктора среды данных

Присоединим нужную базу к среде разработки Visual Basic (п. 9.7) и создадим конструктор среды. Для примера используем конструктор, созданный в предыдущем пункте. В окне конструктора Data Environment щелкните правой кнопкой мыши на таблицеStroikiи выберите командуProperties(свойства). В окне свойств включите флажокSQL-statement, а затем нажмите кнопкуSQL Build. Появится окно запросовDesign(рис.9.10.1).

Рис. 9.10.1. Окна конструктора запросов, просмотра и среды данных

Перетащим из окна просмотра таблицу Stroikiв верхнюю часть окна запросов. Перетащим все поля из таблицы в сетку окна запросов. В нижней части окна запроса формируется текст команды SQL (Select …). Для перетаскивания всех полей можно щелкнуть на первом поле “*”. Для выполнения запроса выберем командуQuery/Run, и сформированный зап­рос выведется в нижней части окна конструктора запросов. Для сох­ра­не­ния запроса выберите командуFile/Save Uchet_Stroek. Используя команды контекстного меню в окне запросов, можно создать запросы на выборку данных (Select Query), на добавление записей в другую таблицу (Insert Query), на удаление существующих записей (Delete Query), на изменение отдельных значений полей и записей (Update Query), на создание таблицы (Make Table Query), на группировку записей (Group By). Текст команды Select можно изменять, например Qbjom*1,1 увеличит в запросе объем выполненных работ в 1,1 раза.

Используя конструктор запросов, можно визуально установить связь между таблицами: установите мышку на поле связи, нажмите левую кнопку мыши и, не отпуская ее, перетащите указатель на поле связи другой таблицы и отпустите кнопку. На экране появится линия связи.

Для удаления связи щелкните на линии связи правой кнопкой мыши и выберите команду из контекстного меню Remove.

Внимание!Для повторного формирования среды окружения (например, перед выводом отчета (п. 9.11)) нужно выполнить командуUnload <имя среды>.