AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Datenbankschema - Tabellenverknüpfung
Thema durchsuchen
Ansicht
Themen-Optionen

Datenbankschema - Tabellenverknüpfung

Ein Thema von NoGAD · begonnen am 17. Mär 2021 · letzter Beitrag vom 19. Mär 2021
 
Delphi.Narium

Registriert seit: 27. Nov 2017
2.598 Beiträge
 
Delphi 7 Professional
 
#6

AW: Datenbankschema - Tabellenverknüpfung

  Alt 17. Mär 2021, 14:18
Könnte man weglassen.

Wenn man das Programm aber mal ausbauen will, um damit auch CDs, DVDs, VHS-Vidokassetten (wir sind ja schon was älter), Musiknoten und was sonst noch ... verwalten will, dann könnte man diese Tabelle erweiteren und anhand der Auswahl dort auf unterschiedliche Programmteile verzweigen, könnte aber ggfls. auch Verknüpfungen unter den Tabellen zu den verschiedenen Themenbereichen erstellen. Z. B.: Haben wir zu dem Titel xy auch die passenden Noten und auf welchen CDs ... ist er ebenfalls zu finden, jedenfalls ist er in dem Liederbuch im Regal a, Fach b, sowie als MusicXML ... vorhanden.

Ok: Wäre dann erstmal nur Spielerei, aber wer weiß, was noch daraus wird.

Ließe sich ggfls. dann später "nachmodelieren". Momentan jedenfalls absolut entbehrlich.

Die ISBN ist eine Nummer und kein String (fällt mir gerade noch so ein). Es gibt sie in zwei Varianten, als 10-stellige Zahl oder als 13-stellige Zahl. String 42 ist da irgendwie seltsam.

https://de.wikipedia.org/wiki/Intern...dardbuchnummer

Die ISBN 10 ist die ISBN 13 abzüglich der ersten drei Ziffern zuzüglich der Neuberechnung der Prüfziffer an der letzten Stelle. Genaugenommen handelt es sich hier um eine Redundanz. Aus ISBN 13 bekommt man über definierte Regeln immer ISBN 10. Persönlich würd' ich nur die ISBN 13 speichern. Aus ISBN 13 bekommt man im Bedarfsfall immer ISBN 10. Ob man aus ISBN 10 immer auf die führende 978 bzw. 979 der ISBN 13 zurückschließen kann, weiß ich nicht.

Delphi-Quellcode:
{als reine Ziffernfolge} Copy(ISBN13,4,9) = Copy(ISBN10,1,9)
{nach ISO formatiert} Copy(ISBN13,4,14) = Copy(ISBN10,1,12)
Die Bindestriche, Leerzeichen, ... in den Nummern sind was für die Menschen, die das dann ggfls. besser lesen können, aber eigentlich nicht für die Abspeicherung erforderlich.
Zumal: Wenn man die Bindestriche korrekt setzen will, so sind sie abhängig davon zu setzen, zu welchem Land, zu welcher Gruppennummer, zu welchem Verlag sie gehört. Der Rest ist dann die Nummer des Titels, gefolgt von der einstelligen Prüfziffer. Bei der Beachtung der Formatierregeln für die Anzeige, wird eine ISBN 13 17 Zeichen lang. Wenn man dann noch das ISBN mit speichert, kommt man auf 22 Zeichen. Beim Speichern der Bindestriche muss man natürlich String als Datentyp wählen.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz