[英]Is there a way to add multiple values with same ID in two different tables?
使用 PHP 和 mySQL,我需要在 2 個 mysql 表中添加多個值:第一個表將包含更重要的信息,第二個將包含不太重要的信息。
更清楚地說,一個元素會將他的信息分成兩個表。
(出於某些原因,我需要這個,但其中兩個是:使第一個表的權重盡可能小,第二個表將存儲在短時間內將被擦除的數據(同時第一個表保留它存儲的所有數據)。 )
在最好的情況下,我想在每個表中添加一個關於每個表中具有相同 id 的項目/元素的行。 像這樣的東西:
表1 id|data_1_a|data_1_b|...
表2 id|data_2_a|data_2_b|...
因此,如果我在表 1 中添加一個 ID 為“12345”的元素,它會在表 2 中添加相同 ID 為“12345”的數據。
為此,我想到了兩種解決方案:
也許有更好的方法來實現這一目標?
lastInsertId()
報告執行的最后一個INSERT
語句生成的第一個值。 假設當您插入許多行時,它們在第一個值之后被賦予連續的 id 值是可靠的。 例如,MySQL JDBC 驅動程序依賴此假設,因此它可以報告生成的 id 值集。
僅當您故意設置innodb_autoinc_lock_mode=2
(交錯)時,此假設才會中斷。 有關詳細信息,請參閱https://dev.mysql.com/doc/refman/8.0/en/innodb-auto-increment-handling.html 。
但如果這是我的任務,我仍然會選擇使用一張桌子。 當您發現不再需要某些列時,使用UPDATE
將它們設置為 NULL。 這將消除您在確保跨兩個表使用相同 id 時面臨的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.