0

Мне очень трудно подключиться к базе данных SQL Anywhere 12, используя строки .NET connection.Подключение к удаленной базе данных SQL Anywhere 12 с помощью строки подключения .NET

Я использую следующую строку запроса:

Data Source=xxx.xxx.xxx.xxx,yyyy; Initial Catalog={MyDatabaseName}; User ID={MyUsername}; Password={MyPassword} 

(где xxx.xxx.xxx.xxx = IP-адрес удаленного сервера и YYYY является требуемым портом)

Я пытаюсь запустить с помощью следующего кода, чтобы проверить мое подключение:

private const string connectionString = "{MyQueryString}"; 
private const string testQuery = "{ATestSelectQuery}"; 


using (SqlConnection conn = new SqlConnection(connectionString)) 
{ 
    ExecuteNonQuery(conn, testQuery); 
} 


static void ExecuteNonQuery(SqlConnection conn, string query) 
{ 
    try 
    { 
     using (SqlCommand cmd = new SqlCommand(query, conn)) 
     { 
      cmd.CommandText = query; 
      cmd.CommandType = CommandType.Text; 
      conn.Open(); 
      cmd.ExecuteNonQuery(); 
      conn.Close(); 
     } 
    } 
    catch (Exception ex) 
    { 
     Console.WriteLine("ERROR: {0}", ex.Message); 
    } 
} 

Однако, когда я запускаю это я получаю следующее сообщение об ошибке:

ERROR: A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 0 - An existing connection was forcibly closed by the remote host.)

ответ

1

Ваш код выглядит так, как будто вы пытаетесь подключиться к серверу Microsoft SQL Server, а не к серверу SQLAnywhere 12. SqlConnection, SqlCommand и т. Д. Предназначены только для сервера Microsoft SQL. Объектами .NET для SQLAnywhere 12 являются SAConnection, SACommand и т. Д.

Необходимо убедиться, что у вас установлены файлы клиента SQLAnywhere .NET. Если вы этого не сделаете или не уверены, загрузите SQL Anywhere Developer Edition. Это бесплатно. Клиентские версии 12-17 подключаются к вашему серверу версии 12. Имейте в виду, что строка подключения для SQLAnywhere сильно отличается от строки подключения к MS SQL Server.

Смежные вопросы