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

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

Сообщение Anonymous »

Мы поддерживаем старую версию .NET Framework, и мы установили пакет Mysql.data.6.10.9 для теста. Успешно подключитесь к MySQL V8.0.32, но он получает «Ошибка выполнения запроса: заданный ключ не присутствовал в словаре». При попытке запустить Select version (); .
См. Результат теста ниже, и мы также прикрепляем код образца в разделе «Подробности». br />
.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 . . .

Мы попробовали строку подключения:
  • 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
Он получает ту же ошибку, поэтому следующая ссылка не решила нашу проблему. Или, пожалуйста, укажите, если мы что-то пропустили. Key-was-not-present-in-the Dictionary#: ~: text = для%20anyone%20-й%20thet 20error,%20connector%20-й%20solve%20it.

Подробности: < /strong> < /p>
Полный образцы исходного кода: < /p>
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 МБ.

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