-1

我正在尝试检查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()但现在的结果是:

“枚举没有结果”。

4

1 回答 1

1

最终我自己弄清楚了,并想把它贴在这里,在这被更多人否决之前......

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

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

于 2018-07-26T08:20:22.963 回答