因此,我的用户帐户中包含大量数据,有时人们会创建重复的帐户,而管理员需要无损地合并它们。
我编写了一个脚本,该脚本结合了两个帐户,并将记录存储在merge_record表中。每一行数据都存储为一个merge_record条目,其中包含原始帐户,目标帐户,操作类型(删除,合并或排除),表名称,表示帐号的列以及包含所有键/值对的编码字符串格式如下:
columnoneMERGEBANANAEQUALSvalueoneMERGEBANANASPLITTERcolumntwoMERGEBANANAEQUALSvaluetwo
是的,这可能很难看懂-但我的目标是用一些难以置信的,不太可能被用户使用的字符串来分隔数据对,并且具有相等的可能性也不是不受限制的。之所以需要它,是因为我还创建了一个“撤消合并”按钮,并且该按钮必须是可逆的-因此,“撤消合并”会扫描merge_record的每一行,解构列/值对,并插入到table_name中的original_account ID下account_column部分。
但是,我仍然不喜欢它。有些阅读这篇文章的混蛋可以输入MERGEBANANAEQUALS
作为他们的名字,请求合并,然后请求撤消操作。有什么方法可以绝对保证不会发生碰撞?还是应该重新设计键/值对的存储方式?如果是这样,还有什么更好的方法?
答案 0 :(得分:0)
简单的答案是从数据中创建一行CSV,如下所示:
datum1,"datum,with,commas","datum with ""double quote""",,42
逃避一切令人讨厌的事情。