2

我目前有一个要索引到 SQL 数据库的文件系统路径。我需要访问数据,以便可以根据修改时间、部分名称或许多其他项目对文件进行查询。

有没有办法以某种方式自动将文件系统同步到数据库,或者甚至在类似 sql 的界面中访问文件系统,而不必递归地爬取文件夹?

我正在检查 Microsoft Sync Framework 2.0,因为它现在支持 SQL 数据库,但它似乎不支持将文件同步到数据库。

我确信其他供应商也会做类似的事情,例如 Microsoft 用于 Media Center 中的文件数据库,或者 TVersity 等程序也存储文件数据库。

4

2 回答 2

1

您没有提到编程语言,但这是我的做法,我认为这是大多数媒体应用程序维护库的方式(尽管它们可能使用不同的语言编写并使用 win32 api)。

使用 .net 获取您的初始数据我会递归地扫描目录,然后将所有信息添加到数据库中。然后,我将使用FileSystemWatcher对象运行服务,以获取有关更改的通知并相应地处理事件。

于 2009-08-23T22:48:10.777 回答
0

听起来您想要的是Windows Search。(或 Windows 7 库功能,如果您感觉最前沿)。

最终,无论是您还是第三方服务,都必须爬取磁盘才能提取信息。

顺便说一句,SQL 可能不是该特定工作的最佳工具,具体取决于您要搜索的内容。众所周知,树结构很难在关系数据库中有效地表示 - 您的搜索可能会变得非常昂贵!

于 2009-08-24T00:49:05.813 回答