ADODB.Connection (0x800A0E78) - PullRequest
       29

ADODB.Connection (0x800A0E78)

1 голос
/ 13 мая 2011

Оригинальная строка подключения, работающая на MSSQL 2000:

Provider = SQLOLEDB.1; Сохранять информацию о безопасности = True; ID пользователя = XXXXXXXX; Начальный каталог = IntranetApps; Источник данных = MS; Используйте процедуру для Prepare = 1; Auto Translate = True; Размер пакета = 4096; ID рабочей станции = datawriter; Password = XXXXXXXX ';

Новая строка подключения, которая не работает в MSSQL 2008:

Provider = SQLNCLI10; Server = PR-NB-CIS011 \ SQLEXPRESS; Database = IntranetApps; Uid = XXXXXXXX; PWD = XXXXXXXX;

Я попытался изменить провайдера на SQLNCLI10.1, без провайдера, ...

Однажды я решил ту же проблему, но, черт возьми, я ее сейчас не помню. Я считаю, что нужно было установить какого-нибудь провайдера, но я ничего не могу найти об этом сейчас.

Существует исключение кода для ведьмы:

this.connection = new ActiveXObject("ADODB.Connection");
    this.connection.ConnectionString = this.conString;
    try {
        this.connection.Open;
    }
    catch(e){
        Response.write("Chyba pri pripojeni na db.");
        return false; // pokud dojde k chybe pri pripojovani k databazi, pak fce vraci false, jinak true
    }

Ответы [ 2 ]

0 голосов
/ 13 мая 2011

После вызова Open возникает исключение: «[DBNETLIB] [ConnectionOpen (Connect ()).] SQL Server neexistuje nebo byl odepřen přístup.»(Я не нашел точную локализацию, это означает: «Сервер не существует или доступ запрещен».) Number: -2147467259

В этом случае кажется, что сервер, указанный в строке подключения, не существует, не запущен или предоставленная учетная запись пользователя не имеет достаточных разрешений.

Возможные варианты:

1) Строка подключения неправильно отформатирована для SQL Express 2008, попробуйтеэто:

Server=PR-NB-CIS011\SQLEXPRESS;Database=IntranetApps;User Id=XXXXXXXX;Password=XXXXXXXX;

2) Когда вы откроете Management Studio, попробуйте соединиться с именем пользователя и паролем вашей строки подключения.Это иногда ускоряет и упрощает поиск и отслеживание проблем с разрешениями.

3) Если вы входите в систему с учетной записью пользователя сервера SQL, убедитесь, что у вас включен SQL-сервер и проверка подлинности Windows.Для этого в SQL Management Studio щелкните правой кнопкой мыши сервер, Свойства и на вкладке Безопасность установите флажок «Режим проверки подлинности SQL Server и Windows»

.
0 голосов
/ 13 мая 2011

Если это действительно проблема со строкой соединения, вам следует:

  1. изучение основ
  2. создайте файл нулевой длины "what.udl" и запустите его из командной строки; затем вы можете изменить параметры, проверить соединение и вставить строку соединения из буфера обмена
  3. попробуйте ";Data Source=PR-NB-CIS011\SQLEXPRESS;" вместо ";Server=PR-NB-CIS011\SQLEXPRESS;"
...