Почему при запросе MySQL C# получает сообщение «Ошибка выполнения запроса: заданный ключ отсутствовал в словаре»?MySql

Форум по Mysql
Ответить
Anonymous
 Почему при запросе MySQL C# получает сообщение «Ошибка выполнения запроса: заданный ключ отсутствовал в словаре»?

Сообщение Anonymous »

Мы поддерживаем старую версию .Net framework и установили пакет MySql.Data.6.10.9 для теста.
Пример программы смог успешно подключаемся к MySQL v8.0.32, но появляется сообщение «Ошибка выполнения запроса: заданный ключ отсутствует в словаре». при попытке запустить select version();.
См. выходные данные теста ниже, а также мы позже прикрепляем пример кода в разделе сведений.
.Net version: 4.0.30319.42000
Attempting to open connection...
Connection successful!
Error executing query: The given key was not present in the dictionary.
Press any key to continue . . .
< /code>
Мы пробовали строку подключения: < /p>
  • server=192.168.56.5;uid=root;port=3306;database=test-source;pwd=mysql_root_password, или
  • server=192.168.56.5;uid=root;port=3306;database=test-source;charset=utf8mb4;pwd=mysql_root_password
Появляется та же ошибка, поэтому следующая ссылка не решила нашу проблему. Или укажите, если мы что-то пропустили. Подробнее:
Полный пример исходного кода:
using System;
using MySql.Data.MySqlClient;

class Program
{
static void Main(string[] args)
{
Console.WriteLine(".Net version: " + Environment.Version.ToString());
string connectionString = "server=192.168.56.5;uid=root;port=3306;database=test-source;pwd=mysql_root_password";

try
{
using (var connection = new MySqlConnection(connectionString))
{
Console.WriteLine("Attempting to open connection...");
connection.Open();

if (connection.State == System.Data.ConnectionState.Open)
{
Console.WriteLine("Connection successful!");

// Retrieve MySQL version
try
{
string query = "SELECT VERSION();";
using (var command = new MySqlCommand(query, connection))
{
string version = command.ExecuteScalar().ToString();
Console.WriteLine("MySQL Version: " + version);
}
}
catch (Exception ex)
{
Console.WriteLine("Error executing query: " + ex.Message);
}

}
else
{
Console.WriteLine("Failed to open the connection.");
}
}
}
catch (MySqlException ex)
{
Console.WriteLine("MySQL Exception: " + ex.Message);
}
catch (Exception ex)
{
Console.WriteLine("General Exception: " + ex.Message);
}
}

}


Подробнее здесь: https://stackoverflow.com/questions/793 ... -given-key
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «MySql»