我正在从事一个显示来自不同站点的 RSS 提要的项目。 我将它们保存在数据库中,我的程序每 3 小时获取一次并将它们插入到 sql 数据库中。 我希望提供商的唯一记录不会显示重复的内容。
但问题是有些提供者不提供 GUID 字段,有些提供者提供 GUID 字段但不提供 pubdate.. 还有一些提供者甚至不提供 GUID 或 PubDate 只是标题和链接。
那么要在 sql server 中保持 rss feeds uniqe 最好的方法是什么?
我应该首先检查 guid,然后是 pubbdate,然后是链接,然后是标题?比较 SQL 中的链接字段以检查唯一性是否是一种好的做法?
谢谢。
最佳答案
我会开发一个例程,它采用某些关键参数,如标题、来源和正文,然后将它们组合起来创建一个 CRC 散列。然后将散列作为一个属性与提要一起存储,并在添加新提要之前检查匹配的散列。
我不确定您的环境限制是什么,但这里有一个在 C# 中计算 CRC-32 的示例:http://damieng.com/blog/2006/08/08/calculating_crc32_in_c_and_net
关于sql - 保持 RSS 提要在 sql 数据库中唯一的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11953807/