qq好友数据库
A. 关于 QQ 好友数据库设计
针对sql server数据库来说(sql server比mysql好一些,比oracle差),如果有一个万个用户就一万张表。数据库对表数量的支持也是有限制的。
并且创建表需要有相应的级别比较高的权限,如果每注册一个用户就新建一张表,用户的权限太高了。
再次,按照你的说法,一个人假设有1000个好友,每个表也就1000条数据,相对于数据库来说,这个存储量是相当小的,没有发挥到很好的性能。sql server数据库几百万万条数据是没问题的。
最后,这样查询可能会带来方面之处,但是如果用到了存储过程,复杂的联合查询等(这些都是在数据库中常用的),你这样做就很难完成了。
所以,为何不把这些数据集中到一张表里面呢?
B. 现在的QQ好友数据库是哪一个文件
默认安装qq的位置
:\Program Files\tencent\qq\自己的qq号 \MsgEx.db
MsgEx.db是聊天记录
User.db是好友记录
下面留着参考吧
qq号码文件夹下的文件:
Config.db qq 系统设置
Content_Config.ini 自定义面板设置
ewh.db qq 密码
MsgEx.db qq 聊天记录
notes.db qq 备忘录
qqMailSettingEx.dat qqMail 设置
qqMailAddr.dat qqMail 地址本
QQMailIndex.dat QQMail QRT.dat QQ 炫铃信息
MailData QQMail 本地邮件
ShareInfo.db 共享文件夹设置
User.db QQ 本地好友列表
VQQ.db QQ 视频设置
C. 关于QQ好友关系数据库存储方式
这个不敢胡乱猜测,蒙对了吧,人家腾讯可能就找上门来了,说咱盗取商业秘密;蒙错了吧,这不是糊弄你么?
个人觉得:一个QQ对应多个好友,非会员QQ好友上限好像是500吧,主QQ那个字段应该是带索引的,可以一下拉取这个QQ号的所有好友,不过也有可能是按分区走的
再一个,你说的1000人同时登陆的问题,腾讯才不会那么傻就一个服务器呢,自己看看就知道了,分地域的不同,所用的服务器也不同,数据库也有可能是做的镜像什么的吧,这就不知道了
声明:以上观点只是本人胡乱猜测,如有雷同实属巧合
-------------补充---------
QQ_NUM FRIEND_QQ_NUM
123 456
123 789
123 234
456 123
456 789
789 123
234 123
简单点,拿数据来说明问题吧
QQ_NUM字段必须有索引,当你登录的时候,select FRIEND_QQ_NUM from 表名 where QQ_NUM=123
但是不排除这两个字段是个联合索引,因为根本不可能重复
D. 09版QQ的好友数据库文件在哪个文件夹
就在QQ文件夹里的user文件夹里啊···
09版的安装时会询问你这个是不是在你默认的路径下,也就是说,在安装的时候可能被放到别的盘里面了···
那就不好找了啊··