AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Speichern in Tabellenform

Ein Thema von VkPenguin · begonnen am 18. Dez 2014 · letzter Beitrag vom 25. Dez 2014
Antwort Antwort
Seite 3 von 4     123 4      
Perlsau
(Gast)

n/a Beiträge
 
#21

AW: Speichern in Tabellenform

  Alt 21. Dez 2014, 21:37
Wenn du deinen Record verwendest und das ganze dann in einer "Datenbank" via MemoryDataset (bzw. TClientDataSet) speicherst, verwaltest du deine Tabelle unnötigerweise doppelt. Natürlich kannst du eine Tabelle anlegen, die genau die Felder besitzt, die du in deinem Record bereits erstellt hast. Das ist aber erstens vollkommen umständlich und beansprucht zweitens unnötig Speicherplatz. Verwende doch stattdessen ausschließlich das Dataset als Datenpool. Du legst dann einfach deine Tabelle im Dataset an und arbeitest damit. Das bringt zudem weitere Vorteile wie Sortierung, leichteres Suchen via Locate oder Selektion z.B. aller Namen, die mit "M" anfangen.

Eine einfache Einführung in die Arbeit mit Memorydataset findest du im Delphi-Treff, das würde ich an deiner Stelle mal durcharbeiten:
Einfache Datenbanken mit MyBase

Besser wäre es natürlich, du würdest eine richtige Datenbank verwenden, z.B. Firebird. Das erfordert zwar etwas Einarbeitung, bringt dich aber auch weiter in deiner persönlichen Entwicklung zum Programmierer. Und du kannst damit noch viel mehr machen als mit Records oder einem MemoryDataset, kannst mehrere Tabellen zentral verwalten, hast es wesentlich einfacher beim Erstellen der Tabellen und vieles mehr ...
  Mit Zitat antworten Zitat
Benutzerbild von humbuck
humbuck

Registriert seit: 26. Nov 2014
Ort: BW
65 Beiträge
 
Delphi XE4 Professional
 
#22

AW: Speichern in Tabellenform

  Alt 21. Dez 2014, 21:49
Ich hab dir mal was gebastelt...

Das kannste dann ja deinen Bedürfnissen munter anpassen...

Damit sparst du dir extrem viel Arbeit bei den Datenzugriffen...
Angehängte Dateien
Dateityp: zip SDA.zip (84,3 KB, 6x aufgerufen)
Jörch
Wissen ist Macht!
Wenn man nix weiß, muss man halt nur wissen, wo man nachschlagen muss.
Ergo: Ich weiß nix - macht nix.
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#23

AW: Speichern in Tabellenform

  Alt 21. Dez 2014, 22:16
Versteh ich jetzt nicht: Was hat das mit der Problematik des TE zu tun, der ja weder eine Datenbank hat noch überhaupt Erfahrung im Umgang mit DBs?

Und inwiefern sollte dein Projekt hilfreich sein. Den Dialog, den du da präsentierst, kann ich auch direkt zur Designzeit aufrufen. Irgendwie ziemlich verwirrend das Ganze, findest du nicht?

Ach ja, bevor ich's vergesse: Weshalb machst du hier dauernd Werbung für dein Programm, das du gerne für 99,- Euro verkaufen würdest? Der TE will doch was lernen, oder siehst du das anders?

Irgendwie kann ich mich des Eindrucks nicht erwehren, du hast womöglich selber nicht besonders viel Erfahrung im Umgang mit Datenbanken
  Mit Zitat antworten Zitat
Benutzerbild von humbuck
humbuck

Registriert seit: 26. Nov 2014
Ort: BW
65 Beiträge
 
Delphi XE4 Professional
 
#24

AW: Speichern in Tabellenform

  Alt 21. Dez 2014, 22:41
Versteh ich jetzt nicht: Was hat das mit der Problematik des TE zu tun, der ja weder eine Datenbank hat noch überhaupt Erfahrung im Umgang mit DBs?
Wollte er nicht eine Art 'Pseudo-Excel' einsetzen?

Aus seinen ersten Ausführungen geht hervor, dass er bei der Verwendung von Excel als 'Datenbank' hängen geblieben ist.
Und das kann er mit dem Programmbeispiel fix realisieren.

Bei seinem Verwendungszweck reicht das ja voll aus. Und es ist schneller, als Excel zu starten.

Zitat:
Und inwiefern sollte dein Projekt hilfreich sein. Den Dialog, den du da präsentierst, kann ich auch direkt zur Designzeit aufrufen.
Da hast du natürlich recht. Und nun? Meinste nicht, dass er damit viel mehr Flexibilität bekommt?


Ach ja, bevor ich's vergesse: Weshalb machst du hier dauernd Werbung für dein Programm, das du gerne für 99,- Euro verkaufen würdest? Der TE will doch was lernen, oder siehst du das anders?
Das er was lernen will, hat er erst danach geschrieben.
Ach ja, weshalb hast du denn die (Werbe-)Links in einem Account hier? Schon mal was vom Glashaus gehört?

Zitat:
Irgendwie kann ich mich des Eindrucks nicht erwehren, du hast womöglich selber nicht besonders viel Erfahrung im Umgang mit Datenbanken
Danke, es reicht voll aus. Etwa 30 Jahre Erfahrung sollten genügen.
Und das : "" ist schon frech gewesen.


Übrigens wusste ich nicht, dass du alleine hier die Anregungen und Hilfestellungen gibst. Oder sein Sprachrohr bist...
Jörch
Wissen ist Macht!
Wenn man nix weiß, muss man halt nur wissen, wo man nachschlagen muss.
Ergo: Ich weiß nix - macht nix.
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#25

AW: Speichern in Tabellenform

  Alt 21. Dez 2014, 23:06
Zitat:
Da hast du natürlich recht. Und nun? Meinste nicht, dass er damit viel mehr Flexibilität bekommt?
Nein. Du hast offenbar das Anliegen des TE nicht verstanden. Das könntest du ändern, indem du seine letzten Forenbeiträge liest. Darauf wollte ich dich lediglich hinweisen, falls du mir folgen kannst.

Ach ja, weshalb hast du denn die (Werbe-)Links in einem Account hier? Schon mal was vom Glashaus gehört?
Verweise auf Homepages sind erlaubt, direkte Werbung für Produkte dagegen nicht. Außerdem halte ich es nicht für hilfreich, einem Hilfesuchenden ein nicht näher definiertes Programm zum Kauf aufdrängen zu wollen und das gleich zweimal mit Nachdruck ("du solltest das kaufen"!). Wenn du auf deine Homepage verweisen möchtest, ist das mit Sicherheit kein Problem.

Danke, es reicht voll aus. Etwa 30 Jahre Erfahrung sollten genügen.
Kann ich jetzt glauben oder weiter anzweifeln. Nach 30 Jahren Datenbankerfahrung sieht dein gepostetes Projekt jedenfalls nicht wirklich aus

Übrigens schrieb der TE bereits: "@Humbock: vielen Dank für Dein Angebot, aber ich möchte selbst lernen, damit umzugehen." ... mal so apropo Erfahrung und so ...

Und damit meinte er sicher nicht, er möchte lernen, mit Excel umzugehen. Der Thread war an dieser Stelle schon etwas weiter, es geht inzwischen darum, wie man anstelle von Records ein ClientDataset oder besser gleich eine richtige Datenbank zur Datenverwaltung und -speicherung einsetzt.

Und das : "" ist schon frech gewesen.
Du darfst dich gerne bei den Admins über meine angebliche Frechheit beschweren. Ich finde auch so einiges frech ... Übrigens bedeutet dieses Smiley nicht, daß man das Gegenüber für dumm hält, sondern daß man mal ganz dumm fragt ... mal so apropo Erfahrung und so ...

Übrigens wusste ich nicht, dass du alleine hier die Anregungen und Hilfestellungen gibst. Oder sein Sprachrohr bist...
Oh nein, nicht diese Leier! Wessen Sprachrohr soll ich sein? Ein wenig Zurückhaltung täte dir sicher gut.
  Mit Zitat antworten Zitat
Benutzerbild von humbuck
humbuck

Registriert seit: 26. Nov 2014
Ort: BW
65 Beiträge
 
Delphi XE4 Professional
 
#26

AW: Speichern in Tabellenform

  Alt 21. Dez 2014, 23:52
Ich denke, du solltest dich lieber auf dich konzentrieren, als in derartiger Weise dein Standpunkte zu vertreten.
Ich denke nämlich auch, diese Portal ist für Hilfe gedacht und nicht dazu, um andere zu diskreditieren. Ist leicht überflüssig.

Und noch was: Ich will dir nichts streitig machen. Deine Hilfe als Meinung zählt wie dir anderer auch. Brauchst also keine Angst zu haben.

So, und nun wieder zum Thema...
Jörch
Wissen ist Macht!
Wenn man nix weiß, muss man halt nur wissen, wo man nachschlagen muss.
Ergo: Ich weiß nix - macht nix.
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#27

AW: Speichern in Tabellenform

  Alt 22. Dez 2014, 01:44
... no comment ...
  Mit Zitat antworten Zitat
VkPenguin

Registriert seit: 23. Dez 2011
150 Beiträge
 
Delphi XE7 Architect
 
#28

AW: Speichern in Tabellenform

  Alt 22. Dez 2014, 14:35
@Perlsau (#21): Danke!

den ersten Abschnitt mit MemoryDataset habe ich noch nicht so ganz verstanden, werde aber erstmal ein bisschen nach den Begriffen suchen und dann gegebenenfalls detailliertere Fragen stellen. Bisher habe ich es so gemacht, dass zum Programmstart alle Daten aus Excel lade und am Ende speichere. Mir ist zwar bewusst, dass ich so im Prinzip alles "doppelt" mache, aber für mich hatte es den Vorteil, dass ich z.B.
Code:
Kontostand:=Kontostand-Ausgabe
wesentlich besser lesen und verstehen kann als
Code:
DB.Value[...]:=DB.Value[...]-DB.Value[...]
Ich kann mir zwar gut vorstellen, dass dieses Problem nur auf meine mangelnden Fähigkeiten im Umgang mit der Datenbank zurückführe, aber bei meinem immerhin ca. 20.000 Zeilen Programm alle Variablen durch Datenbankeinträge zu ersetzen scheint mir wesentlich aufwendiger, als bei Programmstart und Ende einmal zu synchronisieren. Bei neuen Programmen werde ich natürlich versuchen, gleich von Beginn an die Datenbank zu integrieren, aber das muss man ja auch erstmal lernen.

Das Tutorial habe ich bereits gelesen, sonst wäre ich soweit erst garnicht gekommen, aber trotzdem vielen Dank. Die weiterführenden Tutorials auf der Seite waren für mich leider nicht so hilfreich, was wahrscheinlich auch der Grund ist, warum ich nun hier festhänge.

Firebird kenne ich noch gar nicht, werde ich mir aber mal ansehen. Es wäre mir allerdings grundsätzlich lieber, nur mit Delphi-Standard-Komponenten auszukommen, weil ich mich mit anderen noch nicht auskenne, bin wie gesagt noch ein Anfänger. Das wird sicherlich auch mal wichtig werden, aber ich will nicht zuviele Baustellen auf einmal anfangen.

Danke jedenfalls nochmal, ich probiere mal noch ein bisschen und melde mich, falls ich eine genaue Frage habe.
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#29

AW: Speichern in Tabellenform

  Alt 22. Dez 2014, 17:07
Firebird kenne ich noch gar nicht, werde ich mir aber mal ansehen. Es wäre mir allerdings grundsätzlich lieber, nur mit Delphi-Standard-Komponenten auszukommen, weil ich mich mit anderen noch nicht auskenne, bin wie gesagt noch ein Anfänger. Das wird sicherlich auch mal wichtig werden, aber ich will nicht zuviele Baustellen auf einmal anfangen.
Firebird ist keine Komponente, sondern quasi eine eigene "Anwendung", die als Dienst läuft: Ein Datenbank-Server. Da du XE7 einsetzt, verfügst du über die FireDac-Komponenten, mit denen du auch Verbindungen zu einer Firebird-Datenbank herstellen kannst. Du würdest also keine Fremdkomponenten benötigen. Firebird kann auch ohne Installation des Firebird-Datenbank-Servers eingesetzt werden, das nennt sich dann Embedded-Datenbank. Die DMBS-Funktionalität wird dann von einer DLL bereitgestellt. So läuft dein Programm dann auch auf Rechnern, die keinen Firebird-Server haben.

Davon abgesehen ist eher davon abzuraten, mit wenig bzw. lediglich rudimentärem Wissen gleich eine komplette Anwendung für den Produktiveinsatz zu entwickeln. Das bereut man spätestens dann, wenn die anfängliche "Kraut- und Rüben-Programmierung" an ihre Grenzen stößt und man inzwischen viel Neues dazugelernt hat, es aber nicht anwenden kann, weil der Aufwand dafür zu groß wäre. Ich spreche aus Erfahrung Inzwischen hab ich zig Anwendungen umgebaut bzw. neu entwickelt, weil der erste Ansatz zu Beginn meiner Entwickler-Laufbahn in eine Sackgasse führte. Das macht zugegebenermaßen nicht wirklich Spaß, aber mit den vermurksten Anwendungen weiterzuarbeiten, macht nicht nur keinen Spaß, sondern frustriert enorm. Wenn du also nur diese eine Anwendung hast, die modernisiert werden sollte, dann würde ich allen Ernstes dazu raten, das anzugehen. Je länger du das vor dir her schiebst, desto schwieriger wird es mit der Zeit.
  Mit Zitat antworten Zitat
VkPenguin

Registriert seit: 23. Dez 2011
150 Beiträge
 
Delphi XE7 Architect
 
#30

AW: Speichern in Tabellenform

  Alt 25. Dez 2014, 15:58
Wie gesagt, das mit Firebird werde ich mal ausprobieren und ich sehe auch ein, dass Du eigentlich mit dem zweiten Teil der Nachricht recht hast, allerdings bin ich mir immernoch nicht sicher, wie das dann laufen soll. Wenn die Variablen und Records alle lösche und dafür an deren Stelle direkte Datenbankbezüge setze wird das ganze doch furchtbar unübersichtlich... und wenn ich den Datenbankbezügen Namen gebe, sodass ich sie darüber ansprechen kann (falls das geht), dann habe ich ja letztlich doch wieder so etwas wie meine Variablen, oder ist das ein Denkfehler?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4      


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 17:50 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