AGB  ·  Datenschutz  ·  Impressum  







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

Datenbank Einstieg

Ein Thema von Pandax3 · begonnen am 14. Jun 2013 · letzter Beitrag vom 4. Aug 2013
Antwort Antwort
Seite 1 von 2  1 2      
Pandax3

Registriert seit: 16. Jul 2011
22 Beiträge
 
#1

Datenbank Einstieg

  Alt 14. Jun 2013, 17:20
Datenbank: -- • Version: -- • Zugriff über: --
Hallo zusammen,
ich beschäftige mich jetzt schon mehrer Jahre, seit der Schule, mit Delphi, habe jedoch noch nicht den Einstieg in die Datenbankprogrammierung gefunden. Irgendwie finde ich, ist das Thema schwer anzugehen, wenn man überhaupt keine Vorkenntnisse hat.

Ich weiß, dass es viele verschiedene Datenbanksysteme gibt, weiß jedoch z.b. nicht worin diese sich unterscheiden.
Des Weiteren weiß ich nicht wie ich von Delphi aus auf die Datenbanken zugreifen kann. Ich lese zwar häufiger in Foren, dass dafür "Zeos" (richtig?) Komponenten sinnvoll sind, jedoch habe ich noch nirgendwo ein Tutorial dazu gefunden. Gibt es neben "Zeos" auch noch andere Komponenten? Oder ist es sogar möglich ohne Komponenten auf Datenbanken zuzugreifen?
Verwenden alle Datenbanken die Sprache SQL?

Mit MySql und PhpMyAdmin habe ich schon gearbeitet und für Webseiten Datenbanken erstellt, gibt es solch ein nützliches Programm wie PhpMyAdmin auch für andere Datenbanksysteme?


Ich habe mir schon mal dieses Tutorial angeschaut http://www.delphi-treff.de/tutorials...eg/einleitung/ , aber habe dann irgendwie festgestellt, dass es doch veraltet ist.

Wie ihr seht, habe ich jede Menge Fragen und ich weiß einfach nicht wie ich das Thema optimal angehe.
Ich hoffe, dass ihr sie mir beantworten könnt, damit ich den Einstieg finde Vielleicht hat ja jemand auch einen Link zu einem guten Tutorial.
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#2

AW: Datenbank Einstieg

  Alt 14. Jun 2013, 17:48
..., jedoch habe ich noch nirgendwo ein Tutorial dazu gefunden...
Hier ein Link zum Tutorial mit Zeos.

Gibt es neben "Zeos" auch noch andere Komponenten?
Ja, zum Beispiel UniDAC, FireDAC, IBDAC, MyDAC und noch viele mehr.
Oder ist es sogar möglich ohne Komponenten auf Datenbanken zuzugreifen?
Ja, suche hier mal im Forum nach Hier im Forum suchenmysql libmysql.dll
Verwenden alle Datenbanken die Sprache SQL?
Ja, alle mir bekannten.

Mit MySql und PhpMyAdmin habe ich schon gearbeitet und für Webseiten Datenbanken erstellt, gibt es solch ein nützliches Programm wie PhpMyAdmin auch für andere Datenbanksysteme?
Es gibt mehrere SQL-Manager, die entweder für ein DBMS sind oder mehrere davon bedienen können.
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Pandax3

Registriert seit: 16. Jul 2011
22 Beiträge
 
#3

AW: Datenbank Einstieg

  Alt 14. Jun 2013, 19:26
ok danke,
habe jetzt noch ein paar Fragen - in Delphi finde ich die Bereiche

dbExpress
BDE
Datenzugriff
Datensteuerung
InterBase
dbGO (ADO)

Welche davon sind veraltet? Ich meine gelesen zu haben, dass die BDE nicht mehr aktuell ist.

Wo genau liegen jetzt die Unterschiede? Kann ich mit den InterBase Komponenten auf eine Interbase Datenbank zugreifen? Wenn ja, kann ich das dann auch mit den dbGO Komponenten oder mit den dbExpress Komponenten?
Haben die Komponenten alle die gleiche Aufgabe? Also mich mit einer Datenbank zu verbinden?

Und wofür genau brauch ich die Komponenten aus dem Datensteuerung Bereich, also z.B. TDBGrid, TDBNavigator, TDBEdit oder TDBMemo.


Danke schonmal
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#4

AW: Datenbank Einstieg

  Alt 14. Jun 2013, 20:45
ok danke, habe jetzt noch ein paar Fragen - in Delphi finde ich die Bereiche ...
Interessant wäre hier erst einmal die Frage, mit welcher Delphi-Version du arbeitest. Ich habe z.B. RadStudio 2009 und kann dir daher nur die Komponenten-Versionen erklären, die bei meiner Version dabei sind. Zum Beispiel konnte man mit früheren Delphi-Interbase-Komponenten noch auf Firebird-Datenbanken zugreifen, das geht mit meiner Version nicht mehr.

dbExpress
BDE
Datenzugriff
Datensteuerung
InterBase
dbGO (ADO)

Welche davon sind veraltet? Ich meine gelesen zu haben, dass die BDE nicht mehr aktuell ist.
Die BDE (Borland Database Engine) ist auf jeden Fall völlig veraltet und sollte daher nicht mehr eingesetzt werden.

Wo genau liegen jetzt die Unterschiede? Kann ich mit den InterBase Komponenten auf eine Interbase Datenbank zugreifen? Wenn ja, kann ich das dann auch mit den dbGO Komponenten oder mit den dbExpress Komponenten? Haben die Komponenten alle die gleiche Aufgabe? Also mich mit einer Datenbank zu verbinden?
Nein, nicht alle Komponenten haben die gleiche Aufgabe. Ich kann dir aber hier nicht alle diese Komponenten erklären, das wäre mir zu aufwendig und zudem ist das schon in der Online-Hilfe erklärt. Und die möcht ich hier nicht abschreiben. Also einfach mal eine dieser Komponenten, über die du etwas wissen willst, auf die Form legen und F1 drücken ...

Und wofür genau brauch ich die Komponenten aus dem Datensteuerung Bereich, also z.B. TDBGrid, TDBNavigator, TDBEdit oder TDBMemo.
DbExpress, BDE, InterBase und dbGO (ADO) stellen Zugriffskomponenten zur Verfügung, mit denen man direkt auf Datenbanken zugreifen kann. Die Unterschiede liegen in den unterschiedlichen Datenbanken, die man damit ansteuern kann. So kann ich (bzw. Delphi 2009) mit DbExpress auf Blackfish, Datasnap, Interbase und MySQL zugreifen. Mit InterBase gehen bei mir nur Interbase-DBs. Ado erlaubt Oracle, MSSQL, MS-Access und einige andere Sächelchen ... BDE wird von mir komplett ignoriert, da verliere ich kein Komma zu ...

In der Palette Datenzugriff finden sich Mittler-Komponenten, die Datenmengen aufnehmen können.

Unter Datensteuerung findest du Komponenten zum Anzeigen und Steuern von Datenmengen.

ich beschäftige mich jetzt schon mehrer Jahre, seit der Schule, mit Delphi, habe jedoch noch nicht den Einstieg in die Datenbankprogrammierung gefunden. Irgendwie finde ich, ist das Thema schwer anzugehen, wenn man überhaupt keine Vorkenntnisse hat.
Heißt das, du hast seit der Schule 2 jahre ständig mit Delphi gearbeitet oder einfach nur, daß du in diesen 2 Jahren ab und zu mal in Delphi reingeschaut hast? (von wegen "keine Vorkenntnisse ...)

Ich weiß, dass es viele verschiedene Datenbanksysteme gibt, weiß jedoch z.b. nicht worin diese sich unterscheiden.
Das ist auch nicht wichtig am Anfang, denn die Unterschiede könntest du jetzt, noch ganz ohne Datenbank-Erfahrung, nicht wirklich nachvollziehen.

Des Weiteren weiß ich nicht wie ich von Delphi aus auf die Datenbanken zugreifen kann.
Dazu gibt es zahlreiche Tutorials, die man einfach mal durcharbeiten muß, um die notwendigen Kenntnisse zu erlangen.
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#5

AW: Datenbank Einstieg

  Alt 14. Jun 2013, 22:54
Verwenden alle Datenbanken die Sprache SQL?
Ja, alle mir bekannten.
Nein. Es gibt auch noch Datenbanken hinter dem Tellerrand. Stichwort: NoSQL, XML-Datenbanken usw.
  Mit Zitat antworten Zitat
Pandax3

Registriert seit: 16. Jul 2011
22 Beiträge
 
#6

AW: Datenbank Einstieg

  Alt 15. Jun 2013, 01:00
Hey, danke erstmal

Zitat:
Heißt das, du hast seit der Schule 2 jahre ständig mit Delphi gearbeitet oder einfach nur, daß du in diesen 2 Jahren ab und zu mal in Delphi reingeschaut hast? (von wegen "keine Vorkenntnisse ...)
Also ich habe Vorkenntnisse, aber eben nicht im Datenbankbereich


Zitat:
Unter Datensteuerung findest du Komponenten zum Anzeigen und Steuern von Datenmengen.
Das verstehe ich irgendwie nicht ganz, wenn ich Daten aus einer Datenbank lade, kann ich diese dann nur in den Komponenten aus der Datensteuerung anzeigen oder kann ich diese z.B. auch in einem normalen Edit oder Label anzeigen lassen?


Zitat:
In der Palette Datenzugriff finden sich Mittler-Komponenten, die Datenmengen aufnehmen können.
Wann genau muss ich diese Komponenten verwenden? Ich glaube mal ein Tutorial gesehen zu haben, in dem man über DataSource und ClientDataSet sowie einem TDBNavigator und einem TDBGrid Daten speichern und laden konnte - dabei handelt es sich doch nicht um eine Datenbank, oder? Und wenn ich z.B. die ADO Komponenten verwende um auf eine Datenbank zuzugreifen, sind dann DataSource und ClientDataSet überhaupt notwendig?

Sorry wenn das irgendwie dumme Fragen sind, aber wäre nett wenn ihr mich bisschen aufklärt
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#7

AW: Datenbank Einstieg

  Alt 15. Jun 2013, 08:42
Zitat:
Heißt das, du hast seit der Schule 2 jahre ständig mit Delphi gearbeitet oder einfach nur, daß du in diesen 2 Jahren ab und zu mal in Delphi reingeschaut hast? (von wegen "keine Vorkenntnisse ...)
Also ich habe Vorkenntnisse, aber eben nicht im Datenbankbereich
Na immerhin

Zitat:
Unter Datensteuerung findest du Komponenten zum Anzeigen und Steuern von Datenmengen.
... wenn ich Daten aus einer Datenbank lade, kann ich diese dann nur in den Komponenten aus der Datensteuerung anzeigen oder kann ich diese z.B. auch in einem normalen Edit oder Label anzeigen lassen?
Ersteres.

Zitat:
In der Palette Datenzugriff finden sich Mittler-Komponenten, die Datenmengen aufnehmen können.
Wann genau muss ich diese Komponenten verwenden? Ich glaube mal ein Tutorial gesehen zu haben, in dem man über DataSource und ClientDataSet sowie einem TDBNavigator und einem TDBGrid Daten speichern und laden konnte - dabei handelt es sich doch nicht um eine Datenbank, oder? Und wenn ich z.B. die ADO Komponenten verwende um auf eine Datenbank zuzugreifen, sind dann DataSource und ClientDataSet überhaupt notwendig?
Aus diesem Grund verwies ich dich auf einschlägige Tutorials. Der Einstieg in die Datenbank-Programmierung ist zu umfangreich, um ihn hier im Forum mal so nebenbei zu beschreiben. Genau dafür gibt es die Einsteiger-Tutorials!

Sorry wenn das irgendwie dumme Fragen sind, aber wäre nett wenn ihr mich bisschen aufklärt
Wie bereits mehrfach erwähnt: Arbeite ein Tutorial durch und erfahre so alles Notwendige. Sicher verstehst du, daß ich keine Lust dazu habe, hier noch einmal ein Tutorial zu verfassen.

Datenbank-Tutorials in der Delphi-Praxis, insbesondere als Einstieg Flexible ADO-Connection zur Ansteuerung einer Access-Datenbank
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#8

AW: Datenbank Einstieg

  Alt 15. Jun 2013, 08:48
Verwenden alle Datenbanken die Sprache SQL?
Ja, alle mir bekannten.
Nein. Es gibt auch noch Datenbanken hinter dem Tellerrand. Stichwort: NoSQL, XML-Datenbanken usw.
Die habe ich jetzt nicht gekannt. Danke, habe wieder was dazu gelernt.

Zitat:
Unter Datensteuerung findest du Komponenten zum Anzeigen und Steuern von Datenmengen.
Das verstehe ich irgendwie nicht ganz, wenn ich Daten aus einer Datenbank lade, kann ich diese dann nur in den Komponenten aus der Datensteuerung anzeigen oder kann ich diese z.B. auch in einem normalen Edit oder Label anzeigen lassen?
Es gibt zwei Wege die Daten aus einer Datenbank anzeigen zulassen und zu bearbeiten. Der erste Weg ist, dass Du die DB-Komponenten benutzt wie TDBEdit, TDBNavigator, TDBCombobox u.s.w. Diese Komponenten findest Du alle unter Data Controlls. Der zweite Weg ist, Du stellst über eine Connection Komponente die Verbindung zur Datenbank her und stellst dann mit einer Query die Abfrage in eine Datenbank. Danach kannst Du das Ergebnis an ganz normale Controls wie TEdit, TCombobox u.s.w. übergeben. Das ganze musst Du dann manuell machen.Für den ersten Weg findest Du ein Beispiel in meinem oben verlinkten Tutorial.
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#9

AW: Datenbank Einstieg

  Alt 15. Jun 2013, 08:56
Moin...

Ich wäre bei diesen vielen richtigen Informationen als Einsteiger richtig verwirrt.

Zusammenfassung:
- keine BDE benutzen bei Neuprojekten
- Datenbankauswahl entsprechend der Anforderung (MSSQL, MySQL, Firebird etc.) Dazu gibt es genug Threads hier als Entscheidungshilfe.
- Welche Zugriffskomponenten? ... Optimal die, die auf das DBMS zugeschnitten sind um auch alle Funktionen nutzen zu können.
- Lizenzkosten nicht außer Acht lassen. Es lauern bei manchen DBMS Lizenzfallen (MySQL z.B.)

Mein Vorschlag wäre:
- Datenbank Firebird
- Zugriffskomponenten Zeos
- AdminTool: IBExpert Personal
Begründung:
- alles ist kostenlos. Das reicht für den Einstieg dicke aus.
- die Datenbank ist eine Datei. Nicht wie bei anderen teilweise komplette Ordnerstrukturen. Sie kann, unter bestimmten Voraussetzungen, einfach kopiert oder verschoben werden.
- Die Datenbank kann ganz einfach sowohl nur mit einem Benutzer (Embedded) oder als Multiuser benutzt werden.

Wir machen mal die erste Datenbank in 5 Schritten:
1.
- Firebird Server herunterladen und installieren. Auch wenn die eigentliche Anwendung es nicht benötigen sollte, empfehle ich den Server auf dem Entwicklungsrechner, um die Anwendung und das AdminTool gleichzeitig benutzen zu können.
32Bit: http://sourceforge.net/projects/fire...2.exe/download
64Bit: http://sourceforge.net/projects/fire...4.exe/download
Du installierst den Server der dem System entspricht.
- Die Zugriffskomponenten kommunizieren über eine DLL mit der Datenbank... fbclient.dll
- Diese sollte im Anwendungsverzeichnis liegen. Nach der Installation liegt sie auf deinem System. Wenn du die Anwendung weitergibst müßtest du erst nach der DLL suchen. So wäre sie an einem "definiertem" Platz.
- !!! hast du eine 32Bit Anwendung brauchst du auch die 32Bit DLL dazu, auch wenn der Server 64Bit ist !!!
2.
- AdminTool herunterladen und installieren
http://ibexpert.net/ibe/index.php?n=...ersonalEdition
3.Datenbank anlegen mit dem AdminTool
- die Datenbank anlegen. Das ist dann das Grundgerüst ohne Inhalt... sinngemäß
- Tabellen anlegen
- innerhalb der Tabellen die Felder anlegen.

(ist etwas komplizierter, aber für den Anfang ist diese Erklärung ausreichend)
-> Commit(Button) bedeuted daß die Datenbank die Änderungen übernehmen soll
-> Rollback (Button) bedeuted daß die Datenbank die Änderungen verwerfen soll
...Datenbank fertsch
- Testdaten eintragen
4. Delphi
- Zeos downloaden. Welche Version? Da bin ich überfragt wie der aktuelle Stand ist...
- Zeos in die IDE installieren (geht auch ohne, ist aber so erst mal übersichtlicher)
5. Die Anwendung:
- Form, darauf DBGrid, DataSorce, ZQuery, Label, Button,
- das DBGrid mit der Datasource verbinden (OI)
- die DataSource mit der ZQuery verbinden (OI)
- im OnClick des Buttons folgenden Code
Delphi-Quellcode:
ZQuery1.SQL.Text:= 'select * from TabelleNameX'; // Namen sind deine Entscheidung
ZQuery1.Open;
Label1.Caption:= ZQuery1.FieldByName('FeldnameY').AsString;
- jetzt sollten deine Testdaten im Grid stehen und das Label einen Inhalt haben.

Nächste Schritte:
- wie navigiere ich durch die Datenmenge (schaue dir die Methoden der ZQuery an)
- wie schreibe ich Daten
- SQL lernen

Hinweis:
Man kann auch mit Datenbanken arbeiten ohne diese datensensitiven Controls zu benutzen. (die mit einem DB als Präfix)
Dazu wird eine Zwischenschicht benötigt welche die Datenmenge in Objekte umsetzt. Diese werden dann in der Anwendung verarbeitet. Persönlich benutze ich keine datensensitiven Controls mehr. Die Oberfläche hat eine bessere Trennung von Daten und Anzeige.


soooo... Kaffee ist leer, ich muß dann mal weg.

Geändert von haentschman (15. Jun 2013 um 09:24 Uhr)
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#10

AW: Datenbank Einstieg

  Alt 15. Jun 2013, 09:01
- Zeos downloaden. Welche Version? Da bin ich überfragt wie der aktuelle Stand ist...
ZEOSDBO-7.0.3-stable
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 02:48 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