我有一个数据库表,其中包含列dbValues
和dbKeys
。 dbKeys
值是一个字符串,其中包含用;
分隔的键。
dbKeys 1: "name;age;color;...price"
dbKeys 2: "city;street;age;...favourite_meal"
...
[dbValues
与dbKeys
的格式相同,但包含此键的值。
dbValues 1: "Peter;18;blue;...64"
dbValues 2: "London;Main;40;...applepie"
...
多于1000000000000行。我需要从键所在的所有记录中删除一些键及其值,例如age
键,因此结果将是:
dbKeys 1: "name;color;...price"
dbKeys 2: "city;street;...favourite_meal"
...
dbValues 1: "Peter;blue;...64"
dbValues 2: "London;Main;...applepie"
...
您有没有建议如何以最有效的方式修改dbKeys
列中具有特定键值的所有记录?我更喜欢一些SQL或.NET / C#中的东西。
我的解决方案是为所有记录(或每1000条记录)创建周期,并分别更改每条记录。但这对我来说不是很有效。因此,我愿意接受任何其他建议。
这在SQL中确实很困难,但在C#中非常容易。只是:
String.Split()
将值(用于两列)拆分为列表您可能想批量保存而不是单独保存。
当然,首先以这种形式存储数据并不理想。但是您可能已经知道。