mysql - 数据库设计 : How should I store user's news preferences in MySQL database?

标签 mysql database database-design relational-database

我正在尝试实现个性化新闻聚合器。我必须在数据库中保存用户的首选新闻来源。我是否应该将用户喜欢的所有新闻源存储为 JSON 字符串,然后在检索后对其进行解码?

提要 |用户

或者每个新闻来源都有单独的栏(没有新闻来源大约是 200 个)?

feed_name1 | feed_name2 | .....  | user

最佳答案

听起来像是多对多的情况。使用 person 表、newsfeed 表和 person_newsfeed 表的解决方案可能是合适的。网上有很多关于此的文章,任何好的数据库理论书籍(或类似 Oracle 的书籍:完整引用)都应该详细介绍这一点。

这篇文章是一个相当不错(但很短)的总结: http://www.databaseprimer.com/pages/relationship_xtox/

Oracle8 The Complete Reference 在第 35 页左右在讨论第三范式时通过 worker、skill、workerskills 示例介绍了这一点。

关于mysql - 数据库设计 : How should I store user's news preferences in MySQL database?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30713429/

相关文章:

mysql - sql权限分组

mysql子字符串重复相同的值

java - 读取/更新时的 Hibernate 并发(?)问题

database-design - Cassandra - 一张大 table 与许多 table

php - 从Mysql获取每组最小值的总和

mysql - 如何使用不存在代替内连接?

mysql - 无法在 MySQL 5.5.25 中设置 max_allowed_pa​​cket

PHP pdo 实例作为私有(private)静态属性

sql - 电子商务网站上非注册用户的订单存储在哪里?

database - 我应该将表名和列名始终小写吗?