c# - MySQL如果条目不相同,则用旧条目+新条目更新

时间:2017-08-15 09:54:28

标签: c# mysql

我对C#和MySQL比较陌生。我的任务是获取记录并更新数据库表条目,其响应ID类似于旧数据库条目&amp ;;新值,因为我需要保留旧值以供将来引用。我有一个包含10个字段的数据库表,而不是编写一个大的if-cluster编码,我想询问是否有一个使用MySQL命令或C#本身的简洁解决方案。 (我已经知道 ON DUPLICATE KEY UPDATE ,但如果不是重复,我只需要更新)提前谢谢。

编辑:好的,我找到了一个可行的解决方案,虽然我确定它不是很漂亮。在我忽略的一切之后插入数据库。

using (MySqlCommand getData = new MySqlCommand("SELECT concat(Caller, 'µ', 
Email, 'µ', Category, 'µ', Subcategory, 'µ', INC_Type, 'µ', State, 'µ', 
Priority, 'µ', Description) FROM sn_incidents WHERE Number = '" + 
data.result[i].number + "'", connection))
{
    var getDataResult = ((String)getData.ExecuteScalar()).Split('µ');
    for (int j = 0; j < getDataResult.Count(); j++)
    {
        if (String.Equals(result_Array[j], getDataResult[j])) {
            Console.WriteLine("[Logger] String is Equal.");
        }
        else
        {
            Console.WriteLine("[Logger] No duplication found for field " + 
result_ArrayType[j] + ": " + result_Array[j] + "=/=" + getDataResult[j]);
            result_Array[j] = result_Array[j] + " µ " + getDataResult[j];
            Console.WriteLine("[Logger] New String of " + result_ArrayType[j] 
+ " is now " + result_Array[j]);
         }
    }
}

0 个答案:

没有答案