db中受影响的行数不正确

时间:2014-01-17 05:23:08

标签: c# mysql sql

我的应用程序中有以下代码,用于更新数据库。

MySqlConnection summaryConn = new MySqlConnection(summaryConStr);
MySqlCommand summaryCmd = new MySqlCommand();
summaryCmd.Connection = summaryConn;

int effectedRows = 0;
try
{
    summaryConn.Open();

    foreach (string query in queries)
    {
        try
        {
            if (query.Length == 0)
                continue;
            if (summaryConn.State != ConnectionState.Open)
                summaryConn.Open();

            summaryCmd.CommandText = query;

            int tempRowCount = -1;

            tempRowCount = summaryCmd.ExecuteNonQuery();

            effectedRows = tempRowCount > -1 ? effectedRows + tempRowCount : effectedRows;
        }
        catch (Exception ex)
        {
            logExeption(ex);
        }
    }
}
catch(Exception exc)
{
    logException(exc)
}

以下是上述代码的日志:

writeIntoAnalytics:startedOn:2014-01-16 22:48:17。
在2410.9814453秒内在分析中更新/插入/删除了6778634行。 inserted:0,更新时间:905,删除:0。 writtingIntoAnalytics完成时间:2014-01-16 23:28:28。
左右,目标表被索引,插入行分为8列基于unique_key索引,更新和删除行使用auto_increment primary_key 。
这里我的问题是因为要更新的总行数是905,没有要插入和删除的内容。那么为什么影响行是6778634?虽然这种行为很少见,但对我来说很痛苦。
任何人都可以指导我缺少的东西吗?
谢谢。

0 个答案:

没有答案