Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

(Hilfe!!!) Problem beim Setzen von Primärschlüssel

Empfohlene Antworten

hallo,

ich habe ein Problem. Es geht um eine Datenbank, die viele Tabellen beinhaltet, einige von diesen haben keine Primärschlüssel, aber sie haben IDs, ein Beispiel: die Tabelle LU_CRMKunde hat die Spalten Kunden_ID, CRM_ID, Kunde, Dienstleistung und Report. Ich könnte Kunden_ID zusammen mit CRM_ID als PS setzen, aber da entweder die eine oder die andere Spalte NULL Werte beinhalten, weil es sich handelt, um Werte die später eingetragen werden können. Was soll ich in diesem Fall machen, nummerieren kann ich sie auch nicht, damit meine ich einen Index setzen, es gibt 2 IDs. Könnte mir dabei jemand helfen? ich wäre sehr dankbar. Gruß.

Selbsteinzutragende Kunden_ID ? :floet:

Mach noch ne Spalte mit Kunden_CRM_ID(PK) where Kunden_ID is not NULL

by the way, Wie kann eine Kunden_ID leer sein und trotzdem in der datenbank stehen, das verstehe ich nicht.

Selbsteinzutragende Kunden_ID ? :floet:

Mach noch ne Spalte mit Kunden_CRM_ID(PK) where Kunden_ID is not NULL

by the way, Wie kann eine Kunden_ID leer sein und trotzdem in der datenbank stehen, das verstehe ich nicht.

Sorry zuerst und danke für die schnelle Antwort, ich habe mich vertippt, die Spalte CRM_ID ist diejenige die NULL Werte beinhaltet, immer noch müßte es nicht so sein, die Beziehung ist die folgende, ein Kunde kann eine oder mehrere CRM_IDs haben, aber eine CRMID kann einem oder mehreren Kunden zugeordnet, also n:m.

Eigentlich sind diese Tabellen nicht von mir gepflegt, sondern von einem Administrator (der, denke ich mal nicht viel über Datenbanken kennt). Meine Aufgabe war sie zu korrigieren, so weit ich kann. Mich hat auch überrascht eine solche Bezeichnung der Spalte zu sehen mit ID, obwohl sie NULL Werte hat (es sind Werte die später eingetragen werden), wenn ich einen zusammengesetzten PS eintragen mit diesen beiden PS geht es nicht, deswegen die Frage, was soll ich in diesem Fall machen?

hmmm, wieso willst du ein PK für beide setzen ? hat das einen tieferen sinn ?

PKs können nicht NULL sein, da gibts kein wenn und kein aber

... da beide Spalten keine eindeutife Werte haben, dann als mögliche Lösung habe ich gedacht die beiden als zusammengesetzter PS zu setzen.

... da beide Spalten keine eindeutife Werte haben, dann als mögliche Lösung habe ich gedacht die beiden als zusammengesetzter PS zu setzen.

dann ist schlichtweg das datenmodell falsch.

zumindest die ersten 3 NF sollten schon erfüllt werden. die tabelle verletzt schon mal die 2. weil wo kein PK ist kann nichts davon abhängen.

splitte die tabelle und lagere die m:n relation in eine eigene tabelle aus. achja, und kaufe dem urheber des designs ein buch über db-design :)

-j

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.