1

我有一个包含一些机密个人信息的数据库。出于数据分析的目的,我想将这些数据发送给一些人。但是,需要保持数据的匿名性。

有没有办法让我生成假表来在 ie 上执行 JOIN,而不是 JOIN 到user具有真实名称的表,我fakeuser动态生成一个表并 JOIN 到那个表。

我知道它可以手动完成,但查询不会在整个数据库中的所有用户上运行,动态完成它会很好,即当查询调用fakeuserID 23 并且 ID 不存在时,它只是从某处选择一个随机名称并填充表和查询。

如果 MySQL 不够灵活,我愿意通过其他类型的脚本来执行此操作。

4

1 回答 1

0

这似乎是一项非常简单的任务,但它涉及几个步骤,我不确定你在哪里卡住了。

你需要一个名字列表,你可以通过随机生成字母组合(给出不可读的名字)来获得名字列表,或者你可以找到一个公共的名字来源(可能是http://www.listofbabynames.org/)。

然后,您只需要一个循环,通过从列表中随机选择名称来在您的 fakeuser 表中插入记录。您只需要确保不要为 fakeuser 中的不同记录分配相同的名称。这可以通过在您选择一个名称时从列表中删除名称来完成。如果列表不够大,可以生成组合。

我也会仔细考虑@eggyal 给出的建议/文章,看看它是否适用于你的情况。如果您需要更好的解决方案,我认为在匿名数据方面还有很多工作要做。

于 2013-04-23T17:45:42.917 回答