主キー値 (users_id) が重複する 2 つの MySQL テーブルをマージする最良の方法を探しています。
どちらのテーブルも構造が異なり、
MEMEBR(member_id,memeber_email,member_dob,....) 現在 次の自動インクリメント値 27014
USER(users_id, email,name,dob,.....) 現在 次の自動インクリメント値 23734
両方のテーブルは異なるアプリケーションに属しており、主キー値 (Member_id と users_id) を参照する多くのログ/トランザクション テーブルがあります。
USER からデータを選択し、MEMBER に挿入するクエリを既に作成していますが、主な問題は IDS の重複です。最初は、MEMBER の最後のレコードの後に USERS のすべてのレコードを追加しようと考えていますが、これにより新しい IDS が生成され、USER アプリケーションの参照テーブルに矛盾が生じます。
2番目に、追加のフィールドUsers_idをMEMBERに保存して、USERアプリケーションの関連レコードを追跡することを考えています。
次に、この追加フィールドに MEMBER アプリケーション ユーザー用に何を保存するかを指定します。現在、統合されたユーザーは両方のアプリケーションをシームレスに使用するため、このフィールドにはもちろん member_id と同じ値が必要です。
それでは、MEMBER(memeber_id,Users_id,email,....) 1,1,a@b.com 2,2,b@b.com . . . 27014,27014,z@b.com ここで MEMBER レコードを終了します 27015,1,aa@bb.com ユーザー テーブルからの 1 番目のレコード
今、私はここで一貫しています。
user_id 1 は member_id 1 (1,1,a@b.com) と member_id 27015 (27015,1,aa@bb.com) の両方に存在します。
これを修正するには、既存のすべてのメンバー アプリケーションと将来のユーザーの users_id フィールドに 0 を入力します。これは、ユーザー アプリケーションから既存の users_id を保存することを意味します。
同じ問題を理解して直面している場合、または私のように考えることができる場合は、助けてください。
誰かが質問や本当の質問について尋ねるかもしれません.
質問: 上記の問題で説明したように、2 つの異なるアプリケーションから 2 人のユーザー テーブルをマージするときに重複する ID を処理する最善の方法は何でしょうか。そのユーザーは両方のアプリケーションにシームレスにアクセスします。
どんな助けでも感謝します。
さらに情報が必要な場合はお知らせください。