全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 1109|回复: 13

[Windows VPS] 有采集大佬吗?请问一个数据库入库的问题

[复制链接]
发表于 2019-8-6 08:21:05 | 显示全部楼层 |阅读模式
本帖最后由 dengwen168 于 2019-8-6 08:23 编辑

采集的数据要写入cms的数据库,
遇到有外键的情况怎么处理好呢?

比如采集文章入库,文章分类所在的字段是文章分类的id。

这样就需要先执行一次数据库查询,查询到这个文章分类的id,再写入到文章所在的数据表。

入一条记录要查询一次,感觉这方法很笨啊,

大佬们有什么好的方法吗?

谢谢。。
发表于 2019-8-6 08:39:52 | 显示全部楼层
数据库查询反而是秒速,不用担心这个,别的操作都是龟速~
发表于 2019-8-6 09:01:17 | 显示全部楼层
可以考虑把分类组成一个数组  直接取就行了   。。。每次更新分类后需要重新更新这个数组
发表于 2019-8-6 09:07:51 | 显示全部楼层
不懂为什么要先查询一次文章分类
发表于 2019-8-6 09:19:13 | 显示全部楼层
本帖最后由 我是一个大水怪 于 2019-8-6 09:22 编辑
dakai 发表于 2019-8-6 09:07
不懂为什么要先查询一次文章分类


因为他采集获取的是分类文本而不是分类id。

单独采集,不需要考虑数据库问题。其实你的应用应该也达不到需要考虑数据库的地步。
查询一次分类id其实也花不了啥时间(因为分类总体很小,如果你建了索引速度会更快),如果你真觉得不舒服,可以先加载所有文章分类到内存中(本质就是缓存),建立反向索引,每次直接查内存即可。
发表于 2019-8-6 09:27:46 | 显示全部楼层
楼上   学到了
 楼主| 发表于 2019-8-6 09:29:37 | 显示全部楼层
我是一个大水怪 发表于 2019-8-6 09:19
因为他采集获取的是分类文本而不是分类id。

单独采集,不需要考虑数据库问题。其实你的应用应该也达不到 ...

请问一下火车头之类的采集软件,

他们写入wordpress, dedecms之类的程序时,也是使用的这样的插入数据库的形式么?

谢谢。
发表于 2019-8-6 09:33:10 | 显示全部楼层
网站的分类往往是个固定的ID,所以可以写在采集规则里。
如果用火车头的话,采集到的分类名是中文,可以使用文本替换的方式将分类名替换成网站里固定的分类ID
发表于 2019-8-6 09:45:17 | 显示全部楼层
干掉外键

数据库不要用外键
发表于 2019-8-6 09:48:10 | 显示全部楼层
dengwen168 发表于 2019-8-6 09:29
请问一下火车头之类的采集软件,

他们写入wordpress, dedecms之类的程序时,也是使用的这样的插入数据库 ...

不了解,抱歉帮助不了你。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-4-19 13:12 , Processed in 0.064584 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表