Frage

Die Software Ich arbeite mit hat zwei Tabellen, Blei und Kunden. Wenn wir unser Produkt an jemanden verkaufen, ein Rekord in der Kundentabelle mit Daten aus der Lead-Tabelle (sowie einige zusätzlichen Daten) erstellt wird.

Zur Zeit gibt es keine Beziehung zwischen den beiden Tabellen. Das Beste, was jetzt existiert, ist das Lead-Objekt verfügt über eine Funktion, die eine Suche in der Kundentabelle für einen Datensatz mit der gleichen Telefonnummer (in der Hoffnung zu tun, dass es nicht in den letzten 5-10 Jahren verändert hat, dass sie unsere gewesen sind Kunden - auf jeder Leitung einer solchen Suchanfrage erzeugt ein% 82 Kreuzung auf der Kundentabelle). Es gibt keinen Reverse-Lookup (kunden-> Blei).

Das Problem ist, dass ich weiß, brauche welcher Kundendatensatz verknüpft ist, was führte Rekord, und umgekehrt.

Ich hielt eine fk von Blei in Kunden und einen fk von Kunden in Führung zu speichern ... aber die ORM ich verwende Willen Überlauf, wie es Aufzeichnungen darüber lädt, wenn F-Tasten vorhanden ist.

Die Zusammenlegung die beiden Tabellen in eine ‚Person‘ Tisch ist das, was ich möchte, tun, um einen Bit-Flags, die Identifizierung, ob eine Person ein Kunde ist ... aber leider, Zeitrahmen und Budget nicht zulassen.

ich nicht ganz wissen, was zu tun ist.

War es hilfreich?

Lösung

Haben Sie es wirklich brauchen beide Richtungen zu gehen (das heißt 1: M an Kunden führt und 1: M Kunden Leads)? Wenn ja, könnte ein Verbund Tisch „zwischen“ den beiden Sitzen liegt der Weg zu gehen. Jeder Datensatz enthalten würde die PK von Kunden und die PK von Blei (Verknüpfung der beiden).

Wenn Sie nur wissen müssen, wie viele Leads zu einem Kunden verbunden sind, würde ich die FK mit Leitungen hinzufügen (zeigt auf der PK in Kunden).

Andere Tipps

Sie werden die ID-Spalte in jedem Ihrer zwei Tabellen müssen eindeutig Ihre Datensätze identifizieren (wenn Sie es noch nicht haben).

Und Sie haben eine weitere Verknüpfung (junction) Tabelle hinzuzufügen vorhandenen Tabellen zu verbinden. Diese Tabelle enthält zwei Spalten: LeadID und CustomerID. Jede Zeile enthält IDs von entsprechenden Zeilen in Kunden- und Lead-Tabellen.

;> ID-Spalte in Lead-Tabelle - LeadID:

Fremdschlüssel wird Ihre Tabellen verbinden CustomerID. -> ID-Spalte in Tabelle Customer

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top