AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Alternative für SQLite auf Android Gerät (fmx)
Thema durchsuchen
Ansicht
Themen-Optionen

Alternative für SQLite auf Android Gerät (fmx)

Ein Thema von stalkingwolf · begonnen am 12. Sep 2017 · letzter Beitrag vom 15. Sep 2017
Antwort Antwort
Seite 4 von 4   « Erste     234   
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#31

AW: Alternative für SQLite auf Android Gerät (fmx)

  Alt 15. Sep 2017, 07:04
@TigerLilly

Ich stimm dir schon zu, das das bei kleineren Datenmengen eher irrelevant ist. Ich hab mir aber grundsätzlich einfach angewöhnt, möglichst eindeutige Zahlen (Integer usw. ) als Primärschlüssel zu verwenden (auch wenn er dann "nur" ein technischer Schlüssel ist), da mir die Erfahrung gezeigt hat, das die Datenmenge am Projektanfang grundsätzlich viel zu niedrig angesetzt wird. Hinterher ist der Aufwand größer, das ganze zu ändern.

Unter der Voraussetzung, das dort wirklich nur Zahlenwerte gespeichert werden, sollte man auch in einer DB den richtigen Datentyp verwenden. Im Programm verwendet man ja auch für Ganzzahlen Integer-Variablen und nicht Strings
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
stalkingwolf

Registriert seit: 6. Mai 2011
518 Beiträge
 
#32

AW: Alternative für SQLite auf Android Gerät (fmx)

  Alt 15. Sep 2017, 10:21
Ob Natural oder Surrogate Key ist abhängig davon was man drin speichern will.
Das wird auch bei jedem Vergleich der beiden Logiken angesprochen.

Das Datenmodell was ich hier genutzt habe für die Tabelle auf dem Pad i
st die gleiche wie in unserer DB, so dass ich einfach alles 1 zu 1 übernehmen kann ohne mir große einen Kopf zu machen.
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#33

AW: Alternative für SQLite auf Android Gerät (fmx)

  Alt 15. Sep 2017, 11:28
Zitat:
Ist also eine Auftragsnummer aus Zahlen,Tagesdatum und Bearbeiterkürzel zusammen gesetzt (und natürlich eindeutig) nehme ich sie dennoch nicht als Primärschlüssel.
Das würdest du nur dann nicht tun, wenn dein Datennmodell das verhindert. Dein Beispiel ist ein zusammengesetzter Schlüssel - dessen Teile müssen foreign keys sein oder elementare Datentypen. Wenn du zusätzlich zu diesem Key noch einen weiteren PK einführst, hast du nichts gewonnen und nur Aufwand.
Diese Rechnungsnummer und wie sie aufgebaut ist soll ja nur ein beliebiges Beispiel sein. Jede Firma macht da so ihr Ding, oft sind heterogene Systeme im Einsatz, Quelle/Format der Rechnungsnummer oder irgendeiner anderen Bearbeitungsnummer sind häufig nicht in der (alleinigen) Hoheit der eigenen Anwendung.
Hinzu kommt, dass diese "Welten" nicht statisch sind. Der Tag kommt also, wo dank einer Änderung eines Ablaufs oder dem Austausch einer Software die Dinge plötzlich anders laufen.
Ich sehe das eher so, das die Verwendung natürlicher Schlüssel aus Zeiten stammt, wo Speicherplatz noch kostbar war. Heute liegen die Prioritäten anders, mehr Schnittstellen, mehr Interoperabilität, mehr Flexibilität sind gefordert.
Kleines Beispiel: Kontonummer / BLZ könnte man vielleicht mal als Primärschlüssel verwendet haben. Schwierig wird es schon mit der Bankenkonsolidierung, immer mehr Zweigstellen werden unter einer BLZ zusammengefasst. Dann kommt SEPA und alles ist ganz anders.
Fazit: Je mehr ich die reine Mechanik von fachlicher Funktion trenne, desto besser kann ich ein System auf Änderungen einstellen oder schlicht customizen, wenn ich Stangenwahre anbiete, die der Kunde sich zurecht biegen kann.
Gruß, Jo
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 4 von 4   « Erste     234   


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 12:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz