Серия лекций ASP (16) Доступ к базе данных
Автор:Eve Cole
Время обновления:2009-05-30 19:58:46
Объекты данных ActiveX (ADO) — это простая в использовании и расширяемая технология добавления доступа к базе данных на веб-страницах. Вы можете использовать ADO для написания компактных и лаконичных сценариев для подключения к базам данных, совместимым с Open Database Connectivity (ODBC), и источникам данных, совместимым с OLE DB. Если вы являетесь сценаристом и имеете некоторые знания о соединениях с базами данных, вы обнаружите, что операторы команд ADO несложны и их легко освоить. Аналогично, если вы опытный программист баз данных, вы оцените расширенные возможности ADO по независимости от языка и обработке запросов.
Создание файла ODBC DSN Перед созданием сценария базы данных необходимо предоставить ADO способ находить, идентифицировать базу данных и взаимодействовать с ней. Драйвер базы данных использует имя источника данных (DSN) для поиска и идентификации конкретной базы данных, совместимой с ODBC, для передачи информации из веб-приложения в базу данных. Обычно DSN содержит информацию о конфигурации базы данных, безопасности пользователя и местоположении и может быть получен в виде таблицы в разделе реестра Windows NT или в виде текстового файла.
С помощью ODBC вы можете выбрать тип DSN, который хотите создать: пользовательский, системный или файловый. Пользовательские и системные DSN хранятся в реестре Windows NT. Системный DSN позволяет всем пользователям, вошедшим на определенный сервер, получить доступ к базе данных, в то время как пользовательский DSN ограничивает подключения к базе данных определенным пользователям, используя соответствующие учетные данные безопасности. Файл DSN используется для получения таблиц из текстовых файлов, обеспечивает доступ нескольким пользователям и может быть легко перенесен с одного сервера на другой путем копирования файла DSN. По этим причинам в примерах в этом разделе используются файловые DSN.
Вы можете создать файлы на основе DSN, открыв панель управления из меню «Пуск» Windows. Дважды щелкните значок ODBC, выберите страницу свойств File DSN, нажмите «Добавить», выберите драйвер базы данных и нажмите «Далее». Следуйте инструкциям ниже, чтобы настроить DSN для вашей программы базы данных.
Настройка файлового DSN для базы данных Microsoft Access
В диалоговом окне «Создание нового источника данных» выберите «Драйвер Microsoft Access» в списке и нажмите «Далее».
Введите имя файла DSN и нажмите «Далее».
Нажмите «Готово», чтобы создать источник данных.
В диалоговом окне «Настройка ODBC Microsoft Access 97» нажмите «Выбрать». Выберите файл базы данных Microsoft Access (*.mdb) и нажмите «ОК».
ПРИМЕЧАНИЕ. По соображениям производительности и надежности мы настоятельно рекомендуем использовать ядро базы данных клиент-сервер для настройки данных, управляемых веб-приложениями, которые должны быть доступны более чем 10 пользователям одновременно. Хотя ASP может использовать любую базу данных, совместимую с ODBC, он разработан и тщательно протестирован для использования с базами данных клиент-сервер, включая Microsoft ® SQL Server, Oracle и другие.
ASP поддерживает общие файловые базы данных (такие как Microsoft Access или FoxPro) в качестве допустимых источников данных. Хотя в некоторых примерах документации ASP используются общие файловые базы данных, мы рекомендуем использовать такие ядра баз данных только для сценариев разработки или ограниченного развертывания. Базы данных с общими файлами могут не подходить для клиент-серверных баз данных, обслуживающих востребованные высококачественные веб-приложения.
Настройка DSN файла базы данных SQL Server
Примечание. Если база данных находится на удаленном сервере, обратитесь к администратору сервера за дополнительной информацией о конфигурации; в следующей процедуре используются настройки ODBC SQL Server по умолчанию, которые могут не применяться к конфигурации вашего оборудования.
В диалоговом окне «Создание нового источника данных» выберите SQL Server в списке и нажмите кнопку «Далее».
Введите имя файла DSN и нажмите «Далее».
Нажмите «Готово», чтобы создать источник данных.
Введите имя, идентификатор входа и пароль сервера, на котором запущена программа службы SQL.
В диалоговом окне «Создание нового источника данных для SQL Server» введите имя сервера, содержащего базу данных SQL Server, в поле списка «Сервер», а затем нажмите «Далее».
Выберите способ подтверждения своего идентификатора входа.
Если вы выберете аутентификацию SQL-сервера, введите идентификатор входа и пароль и нажмите «Далее».
В диалоговом окне «Создание нового источника данных для SQL Server» задайте базу данных по умолчанию, драйвер для параметров хранимых процедур и идентификацию ANSI, а затем нажмите «Далее». (Для получения дополнительной информации нажмите «Справка».)
В диалоговом окне (также называемом «Создание нового источника данных для SQL Server») выберите метод преобразования символов и нажмите кнопку «Далее». (Для получения дополнительной информации нажмите «Справка».)
В следующем диалоговом окне (также называемом «Создать новый источник данных для SQL Server») выберите параметры входа.
Примечание. Обычно журналы можно использовать только для устранения проблем доступа к базе данных.
В диалоговом окне «Настройка ODBC Microsoft SQL Server» нажмите «Проверить источник данных». Если DSN был создан правильно, в диалоговом окне «Результаты теста» будет указано, что тест завершен успешно.
Информация о соединении SQL-сервера и безопасности. Если вы разрабатываете приложение базы данных ASP, которое подключается к удаленной базе данных SQL Server, вам следует рассмотреть следующие вопросы:
Параметры подключения. Для доступа к удаленной базе данных SQL Server вы можете выбирать между сокетами TCP/IP и именованными каналами. При использовании именованных каналов, поскольку перед установкой соединения пользователь базы данных должен пройти проверку подлинности в Windows NT, пользователям с соответствующими идентификаторами доступа SQL Server, но без учетной записи пользователя Windows NT на компьютере, может быть отказано в доступе к именованному каналу. В качестве альтернативы соединение с использованием сокетов TCP/IP можно подключить непосредственно к серверу базы данных, минуя промежуточный компьютер с использованием именованных каналов. Поскольку вы можете подключиться непосредственно к серверу базы данных, используя соединение сокета TCP/IP, пользователи могут получить доступ через аутентификацию SQL Server без необходимости аутентификации через Windows NT.
Примечание. Использование сокетов TCP/IP может повысить производительность при подключении к удаленным базам данных.
Безопасность. Если вы используете интегрированные или смешанные функции безопасности SQL Server, а база данных SQL Server находится на удаленном сервере, вы не можете использовать подтверждение запросов/ответов Windows NT. То есть идентификатор запроса/ответа Windows NT не может быть перенаправлен на удаленный компьютер, а может использоваться только базовая проверка подлинности, основанная на информации об имени пользователя и пароле пользователя.
Дополнительные сведения по этой теме см. на странице http://www.microsoft.com/sqlsupport/.
Домашняя страница службы технической поддержки Microsoft SQL Server.
Настройка DSN файла базы данных Oracle
Сначала убедитесь, что пользовательское программное обеспечение Oracle правильно установлено на компьютере, на котором будет создан DSN. Для получения дополнительной информации обратитесь к администратору сервера или обратитесь к документации по программному обеспечению вашей базы данных.
В диалоговом окне «Создание нового источника данных» выберите Microsoft ODBC для Oracle из списка и нажмите кнопку «Далее».
Введите имя файла DSN и нажмите «Далее».
Нажмите «Готово», чтобы создать источник данных.
Введите свое имя пользователя, пароль и имя сервера и нажмите «ОК».
Примечание. Файлы DSN имеют расширение .dsn и расположены в каталоге ProgramsCommon FilesODBCData Sources.
Для получения дополнительной информации о создании файлов DSN посетите веб-сайт Microsoft ODBC: http://microsoft.com/odbc/.
Подключение к базе данных. Первым шагом в доступе к информации базы данных является установление соединения с источником базы данных. ADO предоставляет объект Connection, который можно использовать для установления соединений между приложениями и базами данных ODBC и управления ими. Объект Connection имеет различные свойства и методы, которые можно использовать для открытия и закрытия соединений с базой данных, а также для выполнения запросов на обновление информации.
Чтобы установить соединение с базой данных, вы сначала создаете экземпляр объекта Connection. Например, следующий сценарий создает объект Connection, а затем открывает соединение с базой данных:
<%
'Создаем объект подключения
Установите cn = Server.CreateObject("ADODB.Connection")
'Откройте соединение; строка относится к DSN.
cn.Open "FILEDSN=MyDatabase.dsn"
%>
Примечание. Строка DSN не может содержать пробелов ни до, ни после знака равенства (=).
В этом случае метод Open объекта Connection ссылается на файл на основе DSN, который содержит информацию о расположении и конфигурации базы данных. Вы также можете явно указать поставщика, источник данных, идентификатор пользователя и пароль, не ссылаясь на DSN.
Выполнение запроса с помощью объекта Connection Используя метод Execute объекта Connection, вы можете выполнить запрос языка структурированных запросов (SQL) к источнику базы данных и получить результаты. SQL — это стандартный язык для взаимодействия с базами данных, в котором имеется множество команд для получения и обновления информации.
Следующий сценарий использует метод Execute объекта Connection для выполнения запроса в таблице с помощью команды SQL INSERT, которая вставляет данные в определенную таблицу базы данных. В следующем примере сценарий вставляет имя Хосе Луго в таблицу базы данных с именем «Клиенты».
<%
'Определить файловый DSN
strDSN = "FILEDSN=MyDatabase.dsn"
'Создаем экземпляр объекта Connection и открываем соединение с базой данных
Установите cn = Server.CreateObject("ADODB.Connection")
cn.Open strDSN
'Определение оператора SQL SELECT
strSQL = «ВСТАВИТЬ В ЗНАЧЕНИЯ клиентов (Имя, Фамилия) («Хосе», «Луго»)»
'Используйте метод Execute для отправки SQL-запроса в базу данных
cn.Execute(strSQL)
%>
Обратите внимание, что файлы, основанные на строках пути DSN, не должны содержать пробелы до и после знака равенства (=).
Помимо команды SQL INSERT, вы также можете использовать команды SQL UPDATE и DELETE для изменения и удаления информации базы данных.
Используя команду SQL UPDATE, вы можете изменить значение каждого элемента в таблице базы данных. В следующем сценарии команда UPDATE используется для изменения поля «Имя» каждой записи в таблице «Клиенты», поле «Фамилия» которой содержит фамилию Смит на Джефф.
<%
Установите cn = Server.CreateObject("ADODB.Connection")
cn.Open "FILEDSN=MyDatabase.dsn"
cn.Execute "ОБНОВЛЕНИЕ Клиентов SET FirstName = 'Jeff' WHERE LastName = 'Smith' "
%>
Чтобы удалить определенные записи из таблицы базы данных, используйте команду SQL DELETE. Следующий скрипт удаляет все строки с фамилией Смит из таблицы «Клиенты»:
<%
Установите cn = Server.CreateObject("ADODB.Connection")
cn.Open "FILEDSN=MyDatabase.dsn"
cn.Execute «УДАЛЕНИЕ ИЗ клиентов, ГДЕ Фамилия = 'Смит'»
%>
Примечание. Необходимо соблюдать осторожность при использовании команды SQL DELETE. Когда вы используете команду DELETE без предложения WHERE, она удаляет все строки в таблице. Обязательно включите предложение SQL WHERE, чтобы указать точные строки, которые нужно удалить.
Использование объектов набора записей для обработки результатов Хотя объект Connection упрощает задачу подключения к базе данных и выполнения запросов, объект Connection по-прежнему имеет множество недостатков. В частности, объект Connection, который извлекает и отображает информацию о базе данных, не может использоваться для создания сценариев. Вы должны точно знать, какие изменения вы хотите внести в базу данных, прежде чем сможете использовать запросы для реализации этих изменений;
Для получения данных, проверки результатов и изменения базы данных ADO предоставляет объекты Recordset. Как следует из названия, объект Recordset имеет ряд функций, которые можно использовать для извлечения и отображения набора строк базы данных или «записей» в зависимости от ограничений вашего запроса. Объект Recordset хранит расположение записей, возвращаемых запросом, что позволяет просматривать результаты по одному.
В зависимости от настройки свойства PointerType объекта Recordset вы можете прокручивать и обновлять записи. Указатели базы данных позволяют найти определенный элемент в наборе записей. Указатели также используются для получения и проверки записей, а затем выполнения операций на основе этих записей. Объекты набора записей имеют свойства, которые позволяют точно управлять поведением указателей, улучшая возможности проверки и обновления результатов. Например, вы можете использовать свойства CursorType и CursorLocation, чтобы задать тип указателя, вернуть результаты клиентскому приложению (результаты обычно сохраняются на сервере базы данных) и отобразить последние изменения, внесенные в базу данных другими пользователями. .
Получение записей Успешное приложение базы данных использует объект Connection для установления связи и объект Recordset для обработки возвращаемых данных. «Координируя» конкретную функциональность двух объектов, можно разработать приложение базы данных, способное выполнять практически любую задачу по обработке данных. Например, следующий серверный сценарий использует объект Recordset для выполнения команды SQL SELECT. Команда SELECT извлекает набор информации на основе ограничений запроса. Запрос также содержит предложение SQL WHERE, которое используется для сужения области запроса. В этом примере предложение WHERE ограничивает запрос всеми записями, содержащими фамилию Смит в таблице базы данных «Клиенты».
<%
'Установить соединение с источником данных
strDSN = "FILEDSN=MyDatabase.dsn"
Установите cn = Server.CreateObject("ADODB.Connection")
cn.Open strDSN
'Создание экземпляра объекта Recordset
Установите rsCustomers = Server.CreateObject("ADODB.Recordset")
'Открываем набор записей с помощью метода Open
' и использовать соединение, установленное объектом Connection
strSQL = "ВЫБЕРИТЕ Имя, Фамилию ОТ клиентов, ГДЕ Фамилия = 'Смит'"
rsCustomers.Open strSQL, cn
'Прокручивать набор записей и отображать результаты
' и увеличиваем позицию записи с помощью метода MoveNext
Установите objFirstName = rsCustomers("FirstName")
Установите objLastName = rsCustomers("LastName")
Делать до тех пор, пока rsCustomers.EOF
Response.Write objFirstName & " " & objLastName & "<BR>"
rsCustomers.MoveNext
Петля
%>
Обратите внимание, что в предыдущем примере объект Connection использовался для установления соединения с базой данных, а объект Recordset использовал соединение для получения результатов из базы данных. Этот метод полезен, когда вам нужно точно настроить, как установить ссылку на базу данных. Например, если вам нужно указать, как долго ждать до неудачной попытки подключения, вам нужно использовать объект Connection для установки свойств. Однако если вы хотите установить соединение только с использованием свойств соединения ADO по умолчанию, вам следует использовать метод Open объекта Recordset, чтобы установить ссылку:
<%
strDSN = "FILEDSN=MyDatabase.dsn"
strSQL = "ВЫБЕРИТЕ Имя, Фамилию ОТ клиентов, ГДЕ Фамилия = 'Смит'"
Установите rsCustomers = Server.CreateObject("ADODB.Recordset")
'Открываем соединение методом Open
'и использовать соединение, установленное объектом Connection
rsCustomers.Open strSQL, strDSN
'Прокручивать набор записей, отображать результаты,
' и увеличиваем позицию записи с помощью метода MoveNext
Установите objFirstName = rsCustomers("FirstName")
Установите objLastName = rsCustomers("LastName")
Делать до тех пор, пока rsCustomers.EOF
Response.Write objFirstName & " " & objLastName & "<BR>"
rsCustomers.MoveNext
Петля
%>
При использовании метода Open объекта Recordset для установления соединения необходимо использовать объект Connection для обеспечения безопасности соединения.
Использование объекта «Команда» для улучшения запросов С помощью объекта «Команда» ADO вы можете выполнять запросы так же, как и с объектами «Соединение» и «Набор записей». Единственное отличие состоит в том, что с помощью объекта «Команда» вы можете готовить, компилировать и повторять запрос к базе данных. источник, используя другой набор значений. Выполните запрос. Преимущество такой компиляции запросов состоит в том, что вы можете минимизировать время, необходимое для повторной отправки измененных запросов к существующим запросам. В качестве альтернативы вы можете оставить SQL-запрос частично неопределенным перед выполнением, используя параметры переменной части вашего запроса.
Коллекция параметров объекта Command избавляет вас от необходимости заново создавать запрос при каждом его повторном выполнении. Например, если вам необходимо регулярно обновлять информацию о поставках и ценах в веб-системе на основе инвентаризации, вы можете заранее определить запрос следующим образом:
<%
'Открываем соединение с помощью объекта Connection Объект команды
'не имеет открытого метода для установления соединения
strDSN = "FILEDSN=MyDatabase.dsn"
Установите cn = Server.CreateObject("ADODB.Connection")
cn.Open strDSN
'Создать экземпляр объекта команды; для присоединения используйте свойство ActiveConnection.
'подключение к объекту Command
Установить cm= Server.CreateObject("ADODB.Command")
Установите cm.ActiveConnection = cn
'Определить SQL-запрос
cm.CommandText = "ВСТАВИТЬ В Инвентарь (Материал, Количество) ЗНАЧЕНИЯ (?, ?)"
'Сохраняем подготовленную (или предварительно скомпилированную) версию запроса, указанную в CommandText
'свойство перед первым выполнением объекта Command.
см.Подготовлено = Истина
'Определить информацию о конфигурации параметров запроса
cm.Parameters.Append cm.CreateParameter("material_type",200, ,255 )
cm.Parameters.Append cm.CreateParameter("количество",200, ,255 )
'Определить и выполнить первую вставку
cm("material_type") = "лампочки"
см("количество") = "40"
см.Выполнить
'Определяем и выполняем вторую вставку
см("тип_материала") = "предохранители"
см("количество") = "600"
см.Выполнить
%>
Посмотрите пример выше, и вы заметите, что скрипт неоднократно строит и выдает SQL-запрос с разными значениями без переопределения и повторной отправки запроса в источник базы данных. Компиляция запросов с объектами Command также позволяет избежать проблем со слиянием строковых и табличных переменных, вызванных запросами SQL. В частности, проблем, связанных с определением типов переменных строки, даты и времени, можно избежать, используя коллекцию параметров объекта Command. Например, значение запроса SQL, содержащее «'», может привести к сбою запроса:
strSQL = "ВСТАВИТЬ В ЗНАЧЕНИЯ клиентов (Имя, Фамилия) ("Роберт", "О'Хара")"
Обратите внимание, что фамилия О'Хара содержит символ "'", который конфликтует с символом "'", используемым для представления данных в ключевом слове SQL VALUES. Такого типа проблем можно избежать, привязав значение запроса как параметр объекта команды.
Объединение таблиц HTML и баз данных. Доступ к веб-странице, содержащей таблицу HTML, позволяет пользователям удаленно запрашивать базу данных и получать определенную информацию. Используя ADO, вы можете создавать очень простые сценарии для сбора информации о пользовательских таблицах, создания пользовательских запросов к базе данных и возврата информации пользователю. Используя объект ASP Request, вы можете получить информацию, введенную в таблицу HTML, и включить эту информацию в оператор SQL. Например, следующий модуль сценария вставляет в таблицу информацию, предоставленную таблицей HTML. Этот сценарий использует коллекцию объектов Request Form для сбора информации о пользователе.
<%
'Откройте соединение, используя объект Connection.
'не имеет открытого метода для установления соединения
strDSN = "FILEDSN=MyDatabase.dsn"
Установите cn = Server.CreateObject("ADODB.Connection")
cn.Open strDSN
'Экземпляр объекта команды
'и использовать свойство ActiveConnection для присоединения
'подключение к объекту Command
Установить cm= Server.CreateObject("ADODB.Command")
Установите cm.ActiveConnection = cn
'Определить SQL-запрос
cm.CommandText = "ВСТАВИТЬ В MySeedsTable (Тип) ЗНАЧЕНИЯ (?)"
'Определить информацию о конфигурации параметров запроса
cm.Parameters.Append cm.CreateParameter("type",200, ,255 )
'Определяем и выполняем вставку
cm("тип") = Request("SeedType")
см.Выполнить
%>
Управление соединениями с базами данных Самой большой проблемой при разработке надежного веб-приложения для работы с базами данных, например приложения для онлайн-покупок, обслуживающего тысячи клиентов, является правильное управление соединениями с базой данных. Открытие и поддержание соединения с базой данных, даже если информация не передается, может серьезно потреблять ресурсы сервера базы данных и вызывать проблемы с подключением. Хорошо спроектированное веб-приложение базы данных будет повторно использовать соединения с базой данных и компенсировать задержки, вызванные перегрузкой сети.
Причины таймаутов соединения Внезапное увеличение активности может сделать сервер базы данных очень громоздким, что значительно увеличит время, необходимое для установления соединения с базой данных. В результате чрезмерная задержка соединения приведет к снижению производительности базы данных.
Используя ConnectionTimeout объекта Connection, вы можете ограничить время ожидания приложения, прежде чем отказаться от попытки подключения и выдать сообщение об ошибке. Например, следующий сценарий устанавливает для свойства ConnectionTimeout ожидание в течение 20 секунд перед отменой попытки подключения:
Установите cn = Server.CreateObject("ADODB.Connection")
cn.ConnectionTimeout = 20
cn.Open "FILEDSN=MyDatabase.dsn"
Свойство ConnectionTimeout по умолчанию составляет 30 секунд.
Примечание. Прежде чем включать свойство ConnectionTimeout в приложение базы данных, убедитесь, что поставщик соединений и источник данных поддерживают это свойство.
Общие подключения Веб-приложения баз данных, которые часто устанавливают и разрывают соединения с базой данных, могут снизить производительность сервера базы данных. ASP поддерживает эффективное управление соединениями с помощью функций совместного использования ODBC 3.5. Совместное использование подключений поддерживает открытые подключения к базе данных и управляет общим доступом к этим подключениям между различными пользователями для поддержания его производительности и уменьшения количества простаивающих подключений. Для каждого запроса на соединение пул соединений сначала определяет, есть ли в пуле простаивающее соединение. Если он присутствует, пул соединений возвращает соединение, а не устанавливает новое соединение с базой данных.
Если вы хотите, чтобы ваш драйвер ODBC участвовал в совместном использовании подключений, вам необходимо настроить драйвер базы данных и установить свойство CPTimeout драйвера в реестре Windows NT. Когда ODBC отключается, соединение объединяется, а не отключается. Свойство CPTimeout определяет, как долго соединение сохраняется в пуле соединений. Если соединение остается в пуле дольше, чем параметр CPTimeout, оно будет закрыто и удалено из пула. Значение по умолчанию для CPTimeout — 60 секунд.
Вы можете включить пул соединений для определенного драйвера базы данных ODBC, выборочно задав свойство CPTimeout, создав следующий набор ключей реестра:
HKEY_LOCAL_MACHINESOFTWAREODBCODBCINST.INIимя-драйвераCPTimeout = таймаут
(REG_SZ, единицы измерения в секундах)
Например, следующий ключ устанавливает для параметра таймаута пула соединений драйвера SQL Server значение 180 секунд (3 минуты).
HKEY_LOCAL_MACHINESOFTWAREODBCODBCINST.INISQL ServerCPTimeout = 180
Примечание. По умолчанию веб-сервер активирует пул соединений SQL Server, устанавливая для параметра CPTimeout значение 60 секунд.
Использование межстраничных соединений Хотя вы можете повторно использовать межстраничные соединения, сохраняя соединения в объекте приложения ASP, постоянное сохранение соединения открытым не является необходимым и не позволяет в полной мере воспользоваться преимуществами пула соединений. Если многим пользователям необходимо подключиться к одному и тому же приложению базы данных ASP, хорошим подходом является повторное использование подключения к базе данных, поместив строку межстраничного подключения в объект приложения ASP. Например, вы можете указать строку подключения в процедуре события Application_OnStart файла Global.asa, как показано в следующем сценарии:
Приложение.lock
Application("ConnectionString") = "FILEDSN=MyDatabase.dsn"
Приложение.разблокировка
Затем в каждом ASP-файле, обращающемся к базе данных, напишите:
<OBJECT RUNAT=Server ID=cn PROGID="ADODB.Connection"> </OBJECT>
Чтобы создать экземпляр объекта подключения, используйте следующий скрипт:
cn.Open Application("ConnectionString")
Для открытых соединений вы можете написать следующий скрипт в конце страницы, чтобы закрыть соединение:
cn.Закрыть
В ситуациях, когда одному пользователю необходимо повторно использовать межстраничное соединение, лучше использовать соединение объекта сеанса, а не объекта приложения.
Закройте соединение. Если вы хотите более эффективно использовать пул соединений, вам следует закрыть соединение с базой данных как можно скорее. По умолчанию соединение будет разорвано после завершения выполнения сценария. Закрытие соединения, когда оно больше не требуется, снижает нагрузку на сервер базы данных и делает соединение доступным для других пользователей.
Вы можете использовать метод Close объекта Connection, чтобы разорвать соединение между объектом Connection и базой данных. Следующий скрипт открывает соединение, а затем закрывает его:
<% strDSN = "FILEDSN=MyDatabase.dsn"
Установите cn = Server.CreateObject("ADODB.Connection")
cn.Открыть
cn.Закрыть
%>