Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...
Топ:
Техника безопасности при работе на пароконвектомате: К обслуживанию пароконвектомата допускаются лица, прошедшие технический минимум по эксплуатации оборудования...
Когда производится ограждение поезда, остановившегося на перегоне: Во всех случаях немедленно должно быть ограждено место препятствия для движения поездов на смежном пути двухпутного...
Основы обеспечения единства измерений: Обеспечение единства измерений - деятельность метрологических служб, направленная на достижение...
Интересное:
Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом...
Инженерная защита территорий, зданий и сооружений от опасных геологических процессов: Изучение оползневых явлений, оценка устойчивости склонов и проектирование противооползневых сооружений — актуальнейшие задачи, стоящие перед отечественными...
Принципы управления денежными потоками: одним из методов контроля за состоянием денежной наличности является...
Дисциплины:
2022-10-29 | 25 |
5.00
из
|
Заказать работу |
|
|
Хранимая процедура (представление или запрос) равнозначна параметрическому запросу, но хранится в базе данных (например, в Access она хранится на странице запросов) и выполняется на серверах баз данных, что повышает скорость их выполнения. Такие процедуры хранятся в коллекции Catalog.Procedures. Объект Procedure имеет свойства: DateCreated, DateModified, Name, Command (код процедуры).
Хранимая процедура имеет вид:
Parameters <список параметров и их типов через запятую>
<текст команды SQL>
Параметр записывается в виде: [<имя параметра>] <тип параметра>.
Пример создания хранимой процедуры “Два заказчика“ с двумя параметрами “Заказчик1” и “Заказчик2”.
Private Sub Command4_Click() ‘ создание хранимой процедуры
Dim Connection As New ADODB.Connection
Dim Catalog As New ADOX.Catalog, Command As New ADODB.Command
Connection.Open (“Provider=Microsoft.Jet.OLEDB.4.0;Data Source=“ & _
App.Path & “\строительство.mdb“) ‘подключение и открытие базы
Command.CommandText=“Parameters [Заказчик1] Text,[Заказчик2]Text;“& _
“Select * From [Заказчики] Where Nz=[Заказчик1] or Nz=[ Заказчик2]“
Set Catalog.ActiveConnection = Connection
Catalog.Procedures.Append “Два заказчика“,Command ‘сохранить процедуру
Set Command = Nothing: Set Catalog = Nothing ‘удаление
Connection.Close: Set Connection = Nothing ‘закрытие и удаление объектов
End Sub
Пример выполнения хранимой процедуры “Два заказчика“
Private Sub Command5_ Click() ‘выполнение хранимой процедуры
Dim Connection As New ADODB.Connection, Recordset As Recordset
Dim Catalog As New ADOX.Catalog, Command As New ADODB.Command
Connection.Open (“Provider=Microsoft.Jet.OLEDB.4.0;Data Source=“ & _
App.Path & “\строительство.mdb“)
Set Catalog.ActiveConnection = Connection
‘загрузка текста хранимой процедуры “Два заказчика“ и ее выполнение
Set Command = Catalog.Procedures(“Два заказчика“).Command ‘загрузить
Set Recordset=Command.Execute(,Array(“Уралмаш“,“Химмаш“)) ‘выполнить
|
Recordset.MoveFirst ‘переход на первую запись таблицы
Do While Not Recordset.EOF ‘цикл чтения записей
For Each field In Recordset.Fields ‘цикл вывода полей текущей записи
Debug.Print field.Name & “ = “ & field.Value; “ “; ‘вывод на принтер
Next ‘конец цикла
Recordset.MoveNext: Debug.Print ‘переход на следующую запись
Loop ‘конец цикла
Recordset.Close: Set Recordset = Nothing: Set Command = Nothing
Set Catalog = Nothing: Connection.Close: Set Connection=Nothing ‘закрытие
End Sub
Отключение наборов данных
При работе с набором в режиме клиентского курсора можно отключиться от сервера и продолжить работу с отключенным набором. Это позволяет большему числу пользователей работать с данными.
Пример формирования списка наименований заказчиков в объекте ListBox (List1) из таблицы “Заказчики”.
Private Sub Command6_Click() ‘заполнение списка
Dim Connection As New ADODB.Connection ‘создание объекта Connection
Dim Recordset As New ADODB.Recordset ‘создание объекта Recordset
Dim Recordset2 As New ADODB.Recordset ‘создание объекта Recordset2
Connection.Provider = “Microsoft.Jet.OLEDB.4.0“ 'СУБД Access
Connection.ConnectionString = App.Path & “\строительство.mdb“ ‘база
Connection.Open 'подключение и открытие базы
Recordset.CursorLocation = adUseClient ‘клиентский курсор
Recordset.CursorType = adOpenForwardOnly ‘перемещение только вперед
Recordset.LockType = adLockReadOnly ‘только чтение набора
‘RecordSet.LockType=adLockBatchOptimistic ‘пакетная блокировка
‘RecordSet.CursorType=adOpenDynamic ‘корректировка набора
Recordset.Open “Заказчики“, Connection 'открытие набора
Set Recordset.ActiveConnection=Nothing ‘отключение набора от сервера
Set Recordset2 = Recordset ‘возвращение набора Recordset в Recordset2
Set Recordset = Nothing ‘удаление объекта Recordset
List1.Clear ‘очистка списка List1
Do While Not Recordset2.EOF ‘цикл чтения набора Recordset2
List1.AddItem Recordset2(“Nz“) ‘дополнение списка значением поля Nz
Recordset2.MoveNext ‘переход к следующей записи набора Recordset2
Loop ‘конец тела цикла чтения записей
|
‘SaveOffRecordSet Recordset2, Connection ‘пакетное обновление набора
Recordset2.Close: Set Recordset2 = Nothing ‘закрытие и удаление объектов
Connection.Close: Set Connection = Nothing ‘закрытие и удаление объектов
End Sub
Обновление отключенного набора
Обновляемый набор должен иметь свойства:
RecordSet.LockType=adLockBatchOptimistic ‘пакетная блокировка
RecordSet.CursorType=adOpenDynamic ‘корректировка набора
После корректировки отключенного набора следует подключиться к серверу и обновить ранее отключенный набор.
Пример типовой процедуры обновления отключенного набора. Процедура имеет два параметра: отключенный объект Recordset и объект связи Connection. Задание свойств RecordSet и обращение к процедуре показано в предыдущем примере в виде строк с комментариями.
|
|
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...
Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!