如何通过c#查询MySQL Max_Allowed_Packet?

时间:2018-07-26 07:01:23

标签: c# mysql max-allowed-packet

我正在尝试检查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 个答案:

答案 0 :(得分:1)

最终我自己弄清楚了,并想将其发布在这里,然后再进一步投票……

var reader = sql.ExecuteReader();
reader.Read();
max = reader.GetInt32(1);

最好放些尝试,您可以选择通过reader.GetString(0)查询第一个字段,该字段应返回“ max_allowed_pa​​cket”。