我有一个 CMS,它有两种查询内容的方法。一种按 ID 查询,另一种按内容名称查询。
ContentManager.Select(12);
或
ContentManager.Select("Content Name");
我看第一种的方式会更快,因为id是一个索引,不涉及字符串比较。而第二个更容易使用。
出于维护原因,我曾使用第二个。但是,如果我更改内容名称,则 Select 显然不再起作用。但 Id 应该只是 o 数据库级别,并且在 CMS 表单中不可见。
编辑:此外,如果要删除并重新插入内容,则字符串选择会起作用,而 id 选择不会。
我无法在这两种方法之间找到共同点。
最佳答案
按主键选择可提供最佳性能,但这并不总是您唯一的动机。您可以向内容名称列添加索引,具体取决于它的宽度和您的读/写比例(我想这取决于您对数据库的控制程度)。
判断,如果您有 ID,则按 ID 选择,如果没有并且不会破坏您的性能,请不要担心使用内容名称。
关于database - 我应该按 ID 还是名称在数据库中搜索内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1348513/