Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Lokal arbeiten mit Acces Datenbank (https://www.delphipraxis.net/124654-lokal-arbeiten-mit-acces-datenbank.html)

thiagojonas 22. Nov 2008 15:46

Datenbank: Acces • Zugriff über: ODBC/ADO

Lokal arbeiten mit Acces Datenbank
 
Hallo Leute, ich würde gerne Daten aus meinem Programm in eine Datenbank abspeichern, bzw. sie dann auch auslesen.(Z.B in eine Listbox).
Meine Frage wäre, ob das überhaupt geht auf einem Rechner ohne Internetanschluss. Bei MYSQL, weiß ich, dass das nur auf einem Server geht.
Danke
:-D

khh 22. Nov 2008 15:49

Re: Datenbank
 
Zitat:

Zitat von thiagojonas
Bei MYSQL, weiß ich, dass das nur auf einem Server geht.
Danke
:-D


Server bedeutet nicht gleich anderer Rechner oder Internet.
Mysqloder ne andere DB kann auch auf der gleichen Maschine laufen wie die Anwendung.


Gruss KH

DeddyH 22. Nov 2008 15:50

Re: Datenbank
 
Würdest Du bitte dem Thread einen aussagekräftigen Titel geben? Und sicher geht das, wenn es kein "echter" Server sein muss (der sich übrigens auch lokal betreiben ließe), kannst Du entweder auf die sog. Desktop-DBs (Paradox, Access, etc.) oder eine Embedded-Variante zurückgreifen.

thiagojonas 22. Nov 2008 16:09

Re: Lokal arbeiten mit Acces Datenbank
 
Also mein Programm soll offline laufen auch mit der Datenbank. Also mit Access geht das, okay danke:-)
Weiß jemand wo man gute Tutorials findet, wie man eine Datenbank über Delphi erstellt und sie dann auch bearbeiten kann? D.H. über Delphi Werte einfügen oder erstetzen und natürlcih auslesen, wei schon oben gennat z.B. in ein Listbox oder StringGrid.
Dankeschön :-D

DeddyH 22. Nov 2008 16:13

Re: Lokal arbeiten mit Acces Datenbank
 
http://www.delphi-treff.de/tutorials/datenbanken/

thiagojonas 22. Nov 2008 19:23

Re: Lokal arbeiten mit Acces Datenbank
 
Danke, habe mich jetzt schlau gemacht:-)

So ich habe jetzt eine Acces Datenbank erstellt, mit einer tabelle. Wie kann ich den jetzt die daten der tabelle in einer StringGrid einlesen?
Danke im voraus
:-D :-D

taaktaak 22. Nov 2008 20:08

Re: Lokal arbeiten mit Acces Datenbank
 
hier steht das eigentlich recht ausführlich

[OT] Verwendest du meine Verschlüsselung eigentlich für deine Fluglisten? [/OT]

thiagojonas 22. Nov 2008 23:19

Re: Lokal arbeiten mit Acces Datenbank
 
Hi, klar mache ich das :-)
Möchte mein Programm jetzt aber auf eine Datenbank updaten!
Danke
:-D

thiagojonas 23. Nov 2008 11:43

Re: Lokal arbeiten mit Acces Datenbank
 
Okay Super, habe es geschafft eine Verbindung zu einer Datenbank zu erstellen bzw. sich auch zu schließen. Wie kann ich jetzt die Daten in eine StringGrid anzeigen lassen bzw. die Daten einer StringGrid in die Datenbank speichern? Kennt jemand ein gutes Tutorial? Habe bis jetzt leider noch nichts gefunden:-(
Danke :-D

DeddyH 23. Nov 2008 11:49

Re: Lokal arbeiten mit Acces Datenbank
 
Wieso StringGrid und nicht DBGrid?

thiagojonas 23. Nov 2008 12:19

Re: Lokal arbeiten mit Acces Datenbank
 
:-D Ja hast Recht, bin auch schon soweit, dass ich es geschaft habe meine Datenbank in eine DGrid zu ziehen und anzuzeigen.
Kann ich die DGrid komponente so ansteuern wie die StringGrid? Also z.B.
Delphi-Quellcode:
 label1.text := stringGrid.Cells[1,1];
Wie kann ich den jetzt die Daten abspeichern in die datenbank, wenn ich jetzt z.B. einen Namen hinzufügen möchte?
Danke

thiagojonas 23. Nov 2008 12:25

Re: Lokal arbeiten mit Acces Datenbank
 
Schon gut habe ich selber herausgefunden. Danke

Delphi-Quellcode:
DBGrid.DataSource.Dataset.Refresh

thiagojonas 23. Nov 2008 12:38

Re: Lokal arbeiten mit Acces Datenbank
 
Kurze Frage noch. Wie kann ich bei einer DBGrid eine neue Zeile(Row) hinzufügen?
Danke :-D

haentschman 23. Nov 2008 13:02

Re: Lokal arbeiten mit Acces Datenbank
 
Hallo...

das DBGrid spiegelt dein Dataset wieder. d.h. das DBGrid zeigt deine Daten an.
Eine neue Zeile ist einfach ein neuer Datensatz in deiner Tabelle.

:hi:

thiagojonas 23. Nov 2008 14:51

Re: Lokal arbeiten mit Acces Datenbank
 
Ja schon, kann ich aber nicht von delphi aus einen neuen datensatz in die datenbank einfügen?

sx2008 23. Nov 2008 15:03

Re: Lokal arbeiten mit Acces Datenbank
 
Zitat:

Zitat von thiagojonas
... kann ich aber nicht von delphi aus einen neuen datensatz in die datenbank einfügen?

Delphi-Quellcode:
var
  ds : TDataset;
begin
  // ob du jetzt folgendes schreibst
  ds := DBGrid.DataSource.Dataset;
  // oder gleich auf die Tabelle oder Query losgehst, macht keinen Unterschied
  ds := Table1;

  ds.Append; // neuen, leeren Datensatz anhängen
  // Jetzt werden die Felder befüllt
  ds['Feld1'] := 'Test';
  ds['LetzterZugriff'] := Now;
  ds.FieldByName('Feld2').AsInteger := 42; // diese Schreibweise bietet mehr Kontrolle
  ds.Post; // Datensatz speichern

thiagojonas 23. Nov 2008 15:49

Re: Lokal arbeiten mit Acces Datenbank
 
Super Danke! Hilft mir super weiter.
Habe da noch eine kleine Frage. Kann ich eine DataGrid so ansteuern wie eine StringGrid?
Z.B. wenn ich den INhalt einer Zelle in einem Panel wiedergeben möchte?

Achja wie kannn ich dann einen Datensatz löschen?

DeddyH 23. Nov 2008 16:04

Re: Lokal arbeiten mit Acces Datenbank
 
Was heißt denn "Löschen" auf Englisch? Und könnte TDataset wohl eine Methode mit diesem Namen haben?

haentschman 23. Nov 2008 16:05

Re: Lokal arbeiten mit Acces Datenbank
 
Zitat:

Achja wie kannn ich dann einen Datensatz löschen?
in Anlehnung an obiges Beispiel:
Delphi-Quellcode:
ds.Delete
...damit wird der Datensatz auf dem der Datensatzzeiger steht (der aktuelle Datensatz) gelöscht.
:hi:

PS: Sorry fürs Vorkauen... :oops:

alzaimar 23. Nov 2008 16:25

Re: Lokal arbeiten mit Acces Datenbank
 
@thiagojonas, Du kannst doch lesen, oder? Und die kennst auch die Online-Hilfe von Delphi, oder? Und Du hast doch auch diesen Demo-Ordner von Delphi, gell? Und da gibt es doch ein Beispielprojekt, das mit einer Paradox-DB arbeit, hmm? Und dort müsstest Du eigentlich alle Fragen beantwortet bekommen. Natürlich nicht so nett, wie hier. Aber wesentlich schneller.

thiagojonas 23. Nov 2008 16:46

Re: Lokal arbeiten mit Acces Datenbank
 
Super Danke Euch alle für die großartige Hilfe :-D :-D :-D :-D :thumb: :thumb: :thumb: :thumb:

Letzte Frage hätte ich noch :oops: , kann ich die DBGrid so steuern wie eine stringgrid, wie weiter oben schon erwähnt?
DAnkeschön :-D

DeddyH 23. Nov 2008 16:49

Re: Lokal arbeiten mit Acces Datenbank
 
Ein DBGrid stellt nur Daten des darunterliegenden Datasets dar. Du musst also am Dataset angreifen.

thiagojonas 23. Nov 2008 19:21

Re: Lokal arbeiten mit Acces Datenbank
 
Kann Ich die Daten einer ganzen Spalte in eine Listbox oder in eine Combobox anzeigen lassen?

DeddyH 23. Nov 2008 20:00

Re: Lokal arbeiten mit Acces Datenbank
 
Ja. Auf ersten Datensatz gehen und in einer Schleife bis EOF Feldwert abfragen und in die Listbox/Combobox eintragen.

thiagojonas 23. Nov 2008 20:49

Re: Lokal arbeiten mit Acces Datenbank
 
Okay, also vielleicht so?

Delphi-Quellcode:
var
  ds : TDataset;
begin
  ds := DBGrid.DataSource.Dataset;
  for i := -1 to (wo ist hier dir obergrenze?) do
  combobox.Items := ds[['FELD']i];

DeddyH 23. Nov 2008 20:53

Re: Lokal arbeiten mit Acces Datenbank
 
Pseudocode:
Code:
Dataset.First;
while not Dataset.EOF do
  begin
    ListBox.Items.Add(Dataset.FieldByName('Wuppdi').AsString);
    Dataset.Next;
  end;
Du solltest aber vielleicht nochmal die Tutorials durchgehen oder die DP-Suche bemühen ;)

thiagojonas 23. Nov 2008 20:56

Re: Lokal arbeiten mit Acces Datenbank
 
Ja, danke :-D . Hast recht, dass ist ja ganz anders als der standard:-). Da kommt man von alleine nicht drauf. Super und danke trotzdem das es Menschen wie dich gibt, die en nachwuchs so unterstützen :-D :thumb: :thumb:

thiagojonas 23. Nov 2008 22:30

Re: Lokal arbeiten mit Acces Datenbank
 
Ich weiß ich gehe euch auf die nerven :-) Aber das ist jetzt wircklich die letzte frage in bezug auf datenbanken.
Ich möchte nähmlich eine listbox mit einer dbgrid vergeleichen.
Z.B.

Listbox
_______________________________

Hans
Dieter




DBGrid
_______________________________
Spalte [Name]

Hans
DIeter
Jochen



Wenn ich jetzt "Hans" markiere und auf einen Button klicke, dann soll in der DataGrid in eine andere Spalte [z.B. "Alter"] in der gelichen Zeile von "Hans" sein ALter eingefügt werden.("30").

Ich weiß wie man das mit einer StringGrid macht. Das ist kein Problem aber hier mit einer DBGrid habe ich keinen Schimmer wie ich da rangehen kann.
Ich hoffe ihr könnt mir weiterhelfen:-)
Vielen Dank

Sir Rufo 24. Nov 2008 00:27

Re: Lokal arbeiten mit Acces Datenbank
 
Zitat:

Zitat von thiagojonas
Ich weiß ich gehe euch auf die nerven :-)

nö :mrgreen:
Zitat:

Zitat von thiagojonas
Aber das ist jetzt wircklich die letzte frage in bezug auf datenbanken.

glaub ich nicht :mrgreen:
Zitat:

Zitat von thiagojonas
Ich möchte nähmlich eine listbox mit einer dbgrid vergeleichen.

... aua ...
Zitat:

Zitat von thiagojonas
Z.B.

Listbox
_______________________________

Hans
Dieter

DBGrid
_______________________________
Spalte [Name]

Hans
DIeter
Jochen

Wenn ich jetzt "Hans" markiere und auf einen Button klicke, dann soll in der DataGrid in eine andere Spalte [z.B. "Alter"] in der gelichen Zeile von "Hans" sein ALter eingefügt werden.("30").

Ich weiß wie man das mit einer StringGrid macht. Das ist kein Problem aber hier mit einer DBGrid habe ich keinen Schimmer wie ich da rangehen kann.
Ich hoffe ihr könnt mir weiterhelfen:-)
Vielen Dank

1. Wenn du etwas lesen kannst, dann kannst du auch vergleichen -> siehe hier
2. Wenn du etwas anfügen kannst, dann kannst du es auch verändern -> siehe hier ... was heißt denn nochmal "Append"? Und wie könnte dann "Bearbeiten" genannt werden? siehe nochmal hier
3. Delphi-Referenz durchsuchenTDataSet

cu

Oliver

WS1976 24. Nov 2008 06:03

Re: Lokal arbeiten mit Acces Datenbank
 
Hallo Kollege,

es gibt derart viel Tutorials zu diesem Thema.....
Ich habe den Eindruck du hast nicht eines davon gelesen!

Grüsse
Rainer

alzaimar 24. Nov 2008 07:56

Re: Lokal arbeiten mit Acces Datenbank
 
Ich muss ganz ehrlich sagen, das thiagojonas so mit der faulste unselbständigste Fragesteller ist, den ich bisher hier im Forum gesehen habe. Keine Eigeninitiative, kein Verwenden der Hilfefunktion, kein Durcharbeiten der Demos. Nichts. Gar Nichts. Nur Fragen nach dem Motto:"Ich lehn mich zurück und lass andere arbeiten".

mkinzler 24. Nov 2008 08:23

Re: Lokal arbeiten mit Acces Datenbank
 
Da ist er aber leider nicht der Einzige


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:48 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