2012-03-18 33 views
0

我有一个包含真实数据的SQL Server数据库(例如,客户名称,ecc)。
我想将其转换为数据库以便在演示文稿中显示,而不显示其中包含的真实姓名。为测试创建字形DB

一种解决方案可能是转换实名(例如:名称为“abcdefg”的客户可能变成“cfadgbe”),以便原始名称不易被识别。

如果你没有在过去类似的东西(可能在VB.NET,但C#是也可以),我会很感激不是从头开始编写这样的程序。

(如果你做了一件具有同样的目标不同......那么这将是OK呢!)

+1

您可能想查找随机算法而不是字母。例如:http://www.codinghorror.com/blog/2007/12/shuffling.html – 2012-03-20 15:14:05

回答

2

我有同样的问题。我通过创建随机组合的名字和姓氏来解决这个问题。我还将这种技术应用于地址(街道,城市)并生成随机电话号码。这些假地址看起来像真实地址。

Dim firstNames = New List(Of String) 
Dim lastNames = New List(Of String) 

'TODO: Fill these lists with names 

Dim random = New Random() 
Dim numberOfAddresses = 100 
For i As Integer = 0 To numberOfAddresses - 1 
    Dim f = random.Next(firstNames.Count) 
    Dim l = random.Next(lastNames.Count) 
    Dim name = firstNames(f) & " " & lastNames(l) 
    'TODO: update this name in the db 
Next 
+0

不是我正在寻找的东西,而是很好的代码。 – 2012-03-20 10:53:21

1

为什么使用字谜?为什么不创建随机名称?你可以写一个简短的流程来保存100个名字和100个姓氏的列表,并且如果两者都随机更新你的记录,这将允许你为客户拥有“可理解的”名称而不是不可读的字母混合。 ..

+0

Anagrams会让我更容易记住真正的客户名称。但是你的建议很好,我可以从中为我详细阐述一些适合我的东西。 – 2012-03-18 18:30:04