数据库设置实例从一个表作为属性到另一个表的实例

时间:2015-08-17 12:04:03

标签: database

我是数据库的新手,所以这可能是一个愚蠢措辞的愚蠢问题。

考虑数据库表玩家,另一个团队。 来自团队的实例都有一个属性玩家,这是一个由该特定团队中的玩家组成的数组。

是否可以自动将这些玩家链接到玩家表中的实例?如果我想更新其中一个玩家实例的值,则团队表中的关联播放器会自动更新。这将是理想的行为。有可能吗?

对于记录,我使用sqlite3和node.js,如果这有任何区别。但是,我认为这是一个与数据库有关的一般问题。

1 个答案:

答案 0 :(得分:1)

在关系模型中,这些被称为KEYS。

一个是标识玩家和团队实例的PRIMARY KEY,然后在另一个表中用作参考并称为FOREIGN KEY。

表结构看起来与此类似:

Team
-------------
team_id
name

Player
-----------
player_id
name
team_id

或者,如果你希望同一个玩家可能在多个团队中 - 那么就像这样:

team
---------
team_id
name

player
---------
player_id
name

roster
-------------
team_id
player_id

然后你查询结构以找到你想要的答案:例如哪些球员在球队1: 第一次设计

SELECT * FROM player WHERE team_id = 1

第二个设计

SELECT * FROM player p, roster r
WHERE r.team = 1
AND r.player_id = p.player_id