#sql-server #asp-classic #ado
#sql-сервер #asp-классический #ado
Вопрос:
Я устанавливаю соединение с базой данных сервера mssql в asp с помощью команды
adoCon.Открыть «Драйвер ={SQL Server}; Сервер =» amp; host_name amp; «; База данных =» amp; db_name amp; «; Uid=» amp; имя_пользователя amp; «; Pwd =» amp; пароль
Теперь мой вопрос в том, как узнать, было ли это установление соединения успешным. Возвращает ли adoCon.open какое-либо значение, которое я могу использовать в своем операторе if?
Ответ №1:
Я предполагаю, что вы используете объект ADODB-ActiveX… так что это будет свойство adoCon.State
.
- adStateClosed 0 -> Объект закрыт
- adStateOpen 1 -> Объект открыт
- adStateConnecting 2 -> Объект подключается
- adStateExecuting 4 -> Объект выполняет команду
- adStateFetching 8 -> Извлекаются строки объекта
найти дополнительную информацию здесь введите описание ссылки здесь
Ответ №2:
После успешного завершения этого метода соединение является активным, и вы можете выдавать ему команды и обрабатывать результаты.
Поэтому он возвращается при установлении соединения; если по какой-либо причине его не удалось создать — неверные учетные данные, проблемы с сетью и т. Д. — Это вызовет ошибку, Которую вы должны перехватить и обработать встроенным или вспомогательным способом.
function open(cn as adodb.connection) as boolean
on error goto handler
cn.Open "Driver={SQL Server}; Server=" amp; host_name amp; "; Database=" amp; db_name amp; "; Uid=" amp; user_name amp; "; Pwd=" amp; password
open=true
exit function
handler:
response.write "fail " amp; err.description
end function
Комментарии:
1. Лучше добавить ссылку на документацию, которую вы цитируете: msdn.microsoft.com/en-us/library/ms676505(VS.85).aspx