【发布时间】:2013-05-29 00:18:41
【问题描述】:
我已经剖析 Skype 数据库 main.db 几天了,这是我还没有弄清楚的东西。当然,这个问题将非常专门针对 Skype main.db 结构。(免责声明)
看来我需要的所有必要信息都在表Conversations、Messages、Participants 中。
Message 表包含已说过的实际日志、收件人、时间戳和convo_id 外键(尽管未强制执行)以连接到消息所属的Conversation。
Conversation 用于保存Message 和参与的联系人的聚合。
Participants 表适用于Conversations 表和Contacts 表之间的多对多连接器表。
让我感动的是Chats 和Chatmembers 表。 Chatmembers 适用于 Chats Participants 表适用于 Conversations 表;连接联系人和对话或“聊天”。
Chats 中的内容与 Conversations 类似,只是它没有与 Message 表的任何聚合。无法从Messages表映射到消息日志(Messages表的行)所属的Chats表。
Chats 和 Conversations 共享一个外键,Conversations 表有一个名为 chat_dbid 的列连接到 Chats 表。但是Conversations 表中的某些行有一个空的chat_dbid 字段,并且并非Chats 中的所有行都有id 字段对应于chat_dbid 表中的chat_dbid 字段。
Chats 表仍在更新中,我根据时间戳和其中的成员识别出我最近进行的一些聊天或对话。
有人知道Chats 表的确切作用吗?或者更确切地说,Chats table 和 Conversations table 的区别和理由是什么?
当我疯狂地寻找这个时,我只能找到one like that talked about main.db structure,它并没有多大帮助。
根据链接Chats
提供用户参与的聊天。
和Conversations
提供用户参与的对话列表。
他们关于聊天和对话的术语是什么?它们有何不同?
这让我发疯了。
【问题讨论】: