Кто-нибудь знает о любых тонких различиях между поведением SQL Server 2005 при выполнении команды через OSQL и программным запросом с использованием SQlConnection?Поведенческие различия SQLServer 2005 при использовании osql и sqlcommand
У меня есть клиент с базой данных на удаленной машине, с которой я могу использовать OSQL для взаимодействия. Однако, когда я пытаюсь выполнить подобный запрос, создав sqlconnection/sqlcommand; Я получаю сообщение об ошибке:
['A network-related or instance-specific error occurred while establishing a connection to the SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that the SQL Server is configured to allow remote connections (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specific).
Вот команда, которая работает OSQL:
osql -S myHost\SQLEXPRESS -U sa -q "USE [TempDB] select [Endpoint] from [Service]"
Это не работает, выше генерируется ошибка.
SqlConnectionStringBuilder cnBldr = new SqlConnectionStringBuilder();
cnBldr.UserID = "sa";
cnBldr.Password = "PASSWORD";
cnBldr.DataSource = "myHost\\SQLEXPRESS";
cnBldr.InitialCatalog = "TempDB";
using (SqlConnection cn = new SqlConnection(cnBldr.ConnectionString))
using (SqlCommand cmd = new SqlCommand("select [Endpoint] from [Service]",cn))
{
cn.Open();
SqlDataReader rdr = cmd.ExecuteReader();
rdr.Read();
}
В обоих случаях, я бегу, как тот же пользователь (то есть: я войти как пользователь окна, и я либо открыть CMD окно и выполнить команду OSQL или я запустить приложение окна, которое содержит код фрагмент выше. OSQL будет работать, фрагмент кода генерирует указанную выше ошибку. В обоих случаях используется учетная запись «sa» для доступа к базе данных. Фрагмент OSQL предложит пользователю ввести пароль.
Есть ли разница между которые могут быть связаны с этим поведением? Я не считаю, что это связано с проблемой с количеством подключений, поскольку я могу свободно переключаться между выполнением команды osql (которая будет работать) и запуском приложения (который генерирует сообщение об ошибке).
Спасибо за любые мысли.
-John
Используется один и тот же аппарат? – gbn