MYSQL根據另一列(這是外鍵)創建唯一ID

lpares12

在數據庫中,有一個名為的表decks,如下所示:

ID | Name
------------
1  | Deck 1
2  | Deck 2
3  | Deck 3

然後另一個名為的表words應該看起來像這樣

Deck ID | Word ID | Text
-------------------------------
1       | 1       | Cat
2       | 1       | Elephant
1       | 2       | Dog
1       | 3       | Elephant
3       | 1       | Shark

所以基本上這個表應該有一個指向甲板的外鍵,然後是一個根據外鍵設置為自動遞增的鍵。另外請注意,此表的ID將是組合Deck IdWord Id這在 MYSQL 8 中可能嗎?

基本上我所擁有的是這樣的:

CREATE TABLE my_db.words (
    deck_id INT,
    text VARCHAR(100),
    FOREIGN KEY(deck_id) REFERENCES decks(id)
);

但不知道如何創建這個自增字段。

不確定它是否重要,但文本列在此生成的 ID 的結果中應該沒有任何影響。

賈贊·艾哈邁德 |

保留3張桌子。完全標準化。

表 1 - 甲板 表 2 - 字 表 3 - 甲板_字

創建表 1

CREATE TABLE my_db.deck (
    id INT NOT NULL AUTO INCREMENT,
    name VARCHAR(100),
    PRIMARY KEY(id)
);

創建表 2

CREATE TABLE my_db.word (
    id INT NOT NULL AUTO INCREMENT,
    text VARCHAR(100),
    PRIMARY KEY(id)
);

創建表 3

CREATE TABLE my_db.deck_word (
    deck_id INT NOT NULL,
    word_id INT NOT NULL,
    FOREIGN KEY(deck_id) REFERENCES deck(id),
    FOREIGN KEY(word_id) REFERENCES word(id),
    PRIMARY KEY(deck_id, word_id)
);

據此,單詞和牌組都將通過具有復合主鍵的deck_word 表連接起來

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

為每個唯一項目創建一個唯一項目的 df 和另一列的最大值

根據 IF 條件返回另一列的值

r 根據另一列計算一列中的值

通過迭代另一列來創建一列

如何從這些數據創建一個新列?

根據兩列的最大值在數據框中創建一個帶有列名的新列

如何創建唯一索引,這要求一組屬性是唯一的?

根據兩列的值添加另一列

我可以在 R 中創建一列,根據前一行的值計算行的值嗎?

如何根據另一列隔離一列?

為 Pandas 列中的每個唯一值創建新的數據框

根據另一列中的條件,使用 .diff() 函數的結果在 pandas df 中創建一個新列

如何將父子數據從一個數據庫複製到另一個數據庫,同時在子表的外鍵列中分配新創建的父 ID?

創建數據框時創建基於另一列的列

在 R 中創建唯一的 ID 列

使用 SQL 中另一列的所有唯一值創建新列

創建分組依據的列並分析來自另一列的值窗口

根據一列的共同值,在另一列中分配相同的值

如何根據另一列對一列求和?

如何根據sql中另一個表的計數創建一個新表

根據另一列的值選擇一列的元素

根據其他 3 列的值創建一列

如何使用另一列的值從一列創建多列?

如何創建一個表,以便在插入記錄時,複合鍵值會插入到另一列中?

根據條件使用另一列中的值創建新列

如何根據另一列計算一列的值?

創建一個帶有列的數據框,該列將包含一列的唯一值和另一個數據框的唯一列名

如何根據 Python Pandas 第一列中由“-”分隔的值創建 2 個新列?

創建一個基於 R 中數據框中另一列的列