Frage zu rererentieller Integrität

Getting started ... Alles für einen gelungenen Start.
5 Beiträge • Seite 1 von 1
5 Beiträge Seite 1 von 1

Frage zu rererentieller Integrität

Beitrag von Mark33 (ForumUser / 60 / 1 / 0 ) »
Hallo zusammen,

ich habe zwei Übungs-Tabellen:

In einer Tabelle stehen Autos und in der Zweiten stehen Daten zu den Autos (Fahrer etc.)

Über eine Identnummer soll eine 1 : N beziehung hergestellt werden.

Wie kann ich denn hier referenzielle Integrität festlegen? Muss ich das extra programmieren oder gibt es da eine einfache Funktion?

Danke!

Viele Grüße

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Frage zu rererentieller Integrität

Beitrag von km216 (Specialist / 151 / 6 / 11 ) »
Hallo mark,

was heißt denn genau "ich habe zwei Tabellen"?
Sind dies programminterne Tabellen oder Datenbanktabellen?
Musst du diese noch anlegen, bzw. darfst du diese ändern?

Im Data Dictionary kannst du Fremdschlüssel-Beziehungen pflegen, dafür muss die zweite Tabellle natürlich ein Feld enthalten, welches den Schlüssel aus der ersten Tabelle aufnimmt.

Leider ist aus deiner Frage nicht so ganz ersichtlich, was du genau vorhast...

Re: Frage zu rererentieller Integrität

Beitrag von Frank Dittrich (Expert / 674 / 0 / 15 ) »
Davon, dass Du im ABAP Dictionary die Fremdschlüsselbeziehungen richtig pflegst, wird noch keine referentielle Integrität sichergestellt. (Dennoch solltest Du die Fremdschlüsselbeziehungen korrekt pflegen.)
Referentielle Integrität muss im ABAP-Programm (bzw. in allen ABAP-Programmen, die schreibend auf die beiden Tabellen zugreifen), sichergestellt werden, incl. korrekter Verwendung des SAP-Sperr-Mechanismus, um zu verhindern, dass 2 User in verschiedenen Sessions die gleichen Daten bearbeiten...

Frank

Re: Frage zu rererentieller Integrität

Beitrag von Mark33 (ForumUser / 60 / 1 / 0 ) »
Hi!

Danke für eure Antworten!

Das sind zwei selbsterstellte Datenbantabellen.

Also kann ich festhalten:

- Durch die Fremdschlüsselbeziehung die ich auf Tabellenebene festlege, kann sichergestellt werden, dass der Benutzer in der rechtsstehenden Tabelle keinen ungültigen Wert eingibt. (bei 1 : N Beziehung)


- Programmintern muss ich in der linken Tabelle beim Löschen prüfen, ob es in der rechten Tabelle eine dazugehörigen Satz gibt. (Funktioniert das einfach über
SELECT * FROM tabelle_LINKS INNER JOIN tabelle_RECHTS on Primärschl = Fremschlüssel.
Wenn sy-subrc <> 0 ist, dann darf der Datensatz aus der rechten Tabelle gelöscht werden?
==> Oder wird so etwas in der Praxis anders umgesetzt?

Vielen Dank!

Re: Frage zu rererentieller Integrität

Beitrag von a-dead-trousers (Top Expert / 4396 / 223 / 1182 ) »
tja, leider kennt SAP bzw. ABAP keine Fremdschlüssel.
Die Fremdschlüssel die auf Tabellenebene festgelegt werden, dienen nur den Standard SAP Funktionen als Hilfestellung.

ad 1) Ja, sofern die Benutzer Standard-Eingabemaken (z.b. SM30) verwenden ist sichergestellt, das in der "rechtsstehenden" Tabelle keine Werte eingegeben werden können, die "links" nicht vorhanden sind.

ad 2) Für alles andere gilt: Bei jedem Zugriff der Daten ändert/hinzufügt/löscht muss der Programmierer sicherstellen, dass die Daten konsitent sind.
Hier kann man sich dadurch behelfen, dass man eine Datenklasse schreibt die die DB-Zugriff kapselt. So muss man nur einmal die ganze Fremschlüssellogik ausprogrammieren.

lg ADT
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Seite 1 von 1

Vergleichbare Themen

4
Antw.
1828
Views
Referenzielle Integrität bei INSERT-Operationen
von yuro » 09.02.2015 18:24 • Verfasst in ABAP Objects®
2
Antw.
1394
Views
Prüfung von TvKs an externe Systeme auf syntaktische Integrität
von IHe » 04.05.2023 13:56 • Verfasst in Basis
1
Antw.
1924
Views
Mal ne Frage...
von Gast » 05.12.2005 15:42 • Verfasst in ABAP® für Anfänger
3
Antw.
2463
Views
SAP IS-U: Frage zum CIC
von c-harms » 26.07.2005 11:48 • Verfasst in SAP - Allgemeines
1
Antw.
1207
Views
ISU-Frage
von CSZ_Berater » 05.12.2017 13:07 • Verfasst in SAP - Allgemeines

Aktuelle Forenbeiträge

Dialog-Container mit Toolbar/Status
vor 18 Stunden von black_adept gelöst 23 / 3839
User Exit EXIT_RQCPRM10_001
vor 19 Stunden von a-dead-trousers 2 / 331
Trennen Strasse und Hausnummer
Gestern von payten 13 / 10701
Daten an Tabelle binden
Gestern von Lukas Sanders 2 / 1382

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

Dialog-Container mit Toolbar/Status
vor 18 Stunden von black_adept gelöst 23 / 3839
User Exit EXIT_RQCPRM10_001
vor 19 Stunden von a-dead-trousers 2 / 331
Trennen Strasse und Hausnummer
Gestern von payten 13 / 10701
Daten an Tabelle binden
Gestern von Lukas Sanders 2 / 1382

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2913
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9506