我正在构建一组自定义声明,每个声明都定义了有关用户的信息,例如年龄,性别,地址等。然后,声明作为键/值对存储在数据库中。可以动态添加声明类型,以便在需要时可以扩展用户信息。
但是,我遇到了一个小的限制,要求声明值是字符串。特别地,这在存在大量用户(> 100.000)的情况下是相当明显的,并且我想执行复杂的搜索查询,即我正在寻找具有年龄的所有用户> 50.假设BirthDate是另一个在数据库中以字符串形式存储的声明,那么直接针对datetime类型列发出查询或搜索所有用户的声明集的两种情况之间的SQL性能肯定会丢失。
如何处理?
答案 0 :(得分:0)
如何在数据库中存储声明取决于您自己。你不是被迫使用字符串。你可以使用你想要的任何类型。这与WIF可能将其值存储为字符串的事实是分开的。