![]() |
Datenbank: Access • Zugriff über: noch gar nicht
Grundsätzlicher Zugriff auf Access-Datenbanken
Aloha,
ich möchte ein kleines Verwaltungsprogramm schreiben. Die Daten sollen in einer Access-DB abgelegt werden. In der Datenbank existieren noch keine Tabellen, die sollen beim ersten Eintrag angelegt werden. Nun bin ich allerdings völlig unbefleckt im Umgang mit Datenbank in Kombination mit Delphi, ich habe also rein gar keine Ahnung wie ich an die Sache rangehen soll geschweige denn welche Komponenten ich benutzen sollte. Da es eilt, habe ich nicht wirklich die Zeit mich durch die Api's zu wühlen, deswegen hoff ich hier schneller fündig zu werden. Also nun zu meinen Fragen.
mfg chuqa |
Re: Grundsätzlicher Zugriff auf Access-Datenbanken
Zitat:
Das ist deutlich weniger Arbeit; man kann das Erzeugen der Datenbankstruktur aus der Anwendung auch später noch nachholen. Zitat:
TADOQuery (Standard-Komponente) TADODataset (bei erweiterten Anforderungen) TADOTable (bitte auf diese Komponente verzichten, wenn SQL für dich keine Fremdsprache ist) Zitat:
TADOQuery über Property Connection mit der TADOConnection verknüpfen. TADOQuery.SQL eingeben TADOQuery mit TDataSource verknüpfen, TDBGrid mit TDataSource verknüpfen und ADOQuery aktiv schalten. |
Re: Grundsätzlicher Zugriff auf Access-Datenbanken
Auf maeiner Homepage findest du einige Code-Schnipsel:
- Wie du ![]() - Wie du mit ![]() Um festzustellen, welche Tabellen bzw. welche Felder einer Tabelle existieren, verwendest du die Methoden GetTableNames und GetFieldNames der TAdoConnection. Grüße Mikhal |
Re: Grundsätzlicher Zugriff auf Access-Datenbanken
Herzlichen Dank erstmal, habe ein bißchen rumprobiert und müsste eigentlich hinzubekommen sein ;).
Trotzdem noch ein paar Fragen: Benötige ich für jede Komponente, die irgendwie eine Spalte oder eine ganze Tabelle enthält (DBGrid, DBListBox, DBComboBox) eine DataSource und eine ADOQuery oder reicht es, wenn ich während der Laufzeit die SQL-Property des ADOQuery änder und dann die Datenzugriffskomponente an die ADOQuery zuweise? mfg chuqa |
Re: Grundsätzlicher Zugriff auf Access-Datenbanken
DBGrid, DBEdit etc stellen lediglich dein Abfrageergebnis auf dem Bildschirm dar, also benötigen sie immer eine Datenquelle. Sie visualisieren nur das Abfrageergebnis oder dienen zur Erfassung neuer Daten oder von Datenänderungen.
Grüße Mikhal |
Re: Grundsätzlicher Zugriff auf Access-Datenbanken
hmm ok, dann anders,
gibt es eine möglichkeit, dass ich eine abfrage an die datenbank stelle und dann mit dem ergebnis etwas anstelle, also nicht dass ich das abfrageergebnis an eine komponente zuweise sondern anhand meines ergebnisses etwas ausführe, also z.b. ich betätige einen button, eine sql-abfrage wird ausgeführt und anhand des abfrageergebnisses wird z.b. eine meldung ausgegeben. mfg |
Re: Grundsätzlicher Zugriff auf Access-Datenbanken
Natürlich geht das. bei einer DS kannst du z.B. mit der Eigenschaft .FieldByName('<feldname>').Value auf die Felder zugreifen.
|
Re: Grundsätzlicher Zugriff auf Access-Datenbanken
ok danke erstmal, aber irgendwie begreif ich das ganze noch nicht richtig, sry.
also mal angenommen ich habe dbcombobox und zwei dbtext-komponenten. nun habe ich in meiner datenbank eine tabelle mit mehreren spalten. mal angenommen ich möchte nun die erste spalte der tabelle in der combobox abbilden. nun soll bei auswahl eines eintrages der combobox der zugehörige eintrag in der spalte 2 der tabelle in dem einem dbtext und der zugehörige eintrag in der dritten spalte in der anderen dbtext-komponente abgebildet werde. so nun: wie binde ich die datensteuerungskomponenten (dbcombobox,dbtext) an die datenbank an? wieviel datasource-komponenten mit welcher abfrage benötige ich? mfg |
Re: Grundsätzlicher Zugriff auf Access-Datenbanken
Moin,
den drei Datensteuerungskomponeneten weist du die gleiche Datasource zu (Du brauchst also nur eine Datasource). Der Datasource weist du die AdoQery zu, die dein SQL-Statment enhält. Hasse |
Re: Grundsätzlicher Zugriff auf Access-Datenbanken
Die Antwort
Zitat:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:27 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 by Thomas Breitkreuz