Как я могу запросить MySQL Max_Allowed_Packet через C#?
Я пытаюсь проверить значение max_allowed_packet
размер. Это мой код:
public int MaxAllowedPacket()
{
var max = 0;
using (var conn = new MySqlConnection(_ConnectionString))
{
var sql = conn.CreateCommand();
sql.CommandText = "SHOW VARIABLES like 'max_allowed_packet'";
try
{
conn.Open();
var reader = sql.ExecuteReader();
// not sure where to go from here
}
catch (Exception ex)
{
// I've got some logging here
}
}
return max;
}
Я подозреваю, что формат запроса или выполнение неверно, потому что мой результат всегда
-1
РЕДАКТИРОВАТЬ:
Я отредактировал код для использования sql.ExecuteReader()
но результат сейчас:
"Перечень не дал результатов".
1 ответ
Решение
В конце концов понял это сам, и подумал опубликовать это здесь, прежде чем это будет понижено еще больше...
var reader = sql.ExecuteReader();
reader.Read();
max = reader.GetInt32(1);
Лучше всего попытаться поймать, и вы можете запросить первое поле через reader.GetString(0)
, который должен вернуть "max_allowed_packet".