2016-07-20 6 views
0

Ich habe eine PostgreSQL 9.5 Datenbank mit LibreBase verbunden, die versucht, eine Arbeitsauftragsverfolgung zu erstellen. Ich versuche, ein Lookup mit Drop-Downs in meinem Formular zu erstellen, aber ich bekomme Beziehung existiert nicht Fehler, wenn ich es mit der Listbox verknüpfen. Es funktioniert, wenn ich die eingebettete Libre-Datenbank, aber nicht in der Postgres-Datenbank verwende. Ich kann die Beziehung in Librebase nicht erstellen, da der Treiber diese Funktion in Postgres nicht zu unterstützen scheint. Wie baue ich die Beziehung zwischen 2 Tabellen mit pgAdminIII? Kann ich einer Tabelle zwei Felder in derselben Tabelle zuweisen?Nachschlagetabelle in Postgres und Libre Base nicht bevölkert

Antwort

0

pgAdminIII Rechtsklick Constraints hinzufügen Fremdschlüssel .... Sie würden denken, dass wäre leichter zu finden.

In Libre Base das Formularfeld auf Listbox und gehen in die Kontrolle. Dort legen Sie auf der Registerkarte Daten die Tabellenspalte und die Listenwerte auf SQL fest. Mit SQL erstellen Sie eine Abfrage (ich verwendete die grafische Abfrage) mit einem vollständigen (Inner Join?) Verbinden Sie Ihre Tabelle mit der Nachschlagetabelle, stellen Sie sicher, dass nur das Wertfeld sichtbar ist. Wenn Sie das Formular speichern und eingeben, sollten Sie eine Dropdown-Liste haben, die den Zeichenfolgenwert im Formular anzeigt, aber die ID_num (oder den Feldwert, den Sie im relate SQL verwendet haben) in der Tabelle speichert.

Aus irgendeinem Grund alle Richtungen, die ich finden konnte, um dies zu tun entweder beteiligt eine Domain-Liste oder eine Beziehung über die "Beziehung" GUI von denen Sie nicht die gleiche Nachschlagetabelle für 2 verschiedene Feld verwenden (mindestens ist für mich sowieso nicht funktioniert).