mysql - 嵌入系统的表设计

标签 mysql database database-design

我正在网站上开发一个嵌入部分,用户可以嵌入来自各种服务、youtube、myspace music、vimeo 等的不同媒体

我正在尝试找出存储它的最佳方法。用户不必嵌入所有选项,而只能嵌入每种类型中的一个(例如一个视频)。

最初我想只要有一个表,每个嵌入项目一行,如下所示:

  • embedid(自增主键),
    userid、embedded_item_id(例如 YouTube ID)

但后来我意识到一些可嵌入的项目需要多个参数,例如 myspace music,所以我认为 id 创建一个表,其中每个用户都有一行。

  • 用户 ID、youtubeid、vimeoid、
    myspaceid1、myspaceid2

但这似乎有点笨拙,特别是考虑到总会有空行,因为用户不可能拥有所有空行。有没有人有更好的解决方案?

最佳答案

  • “EmbededItem”表具有所有项目共有的列。
  • YouTubeVimeoMySpace 仅具有各自特定的列。

    embededitem_model_01

关于mysql - 嵌入系统的表设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1827319/

相关文章:

database - 读取 postgres 表上的金额

mysql - 在 MySQL 上创建数据库索引的最佳方法

mysql - 在 Jbpm 5.4 中持久化数据

Mysql DB 这是最高效的设计吗?

sql - 在两个数据库表中进行循环引用是一种好习惯吗

php - 如何使用 laravel 4. for windows 文件系统导出 mysql 数据库

mysql - 从 sql server 表创建 mysql View

python - 不允许主机连接到此 MySQL 服务器(从 VM)

mysql - 选择给定日期每组的前 10 行

php - MySql Tinytext vs Varchar vs Char