AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi geändertes DBGrid in Access speichern
Thema durchsuchen
Ansicht
Themen-Optionen

geändertes DBGrid in Access speichern

Ein Thema von ksh · begonnen am 6. Mär 2006 · letzter Beitrag vom 7. Mär 2006
Antwort Antwort
Seite 1 von 3  1 23      
ksh
(Gast)

n/a Beiträge
 
#1

geändertes DBGrid in Access speichern

  Alt 6. Mär 2006, 14:04
Datenbank: Access • Zugriff über: ADO
hallo alle zusammen!

nachdem ich jetzt erfolgreich meine Daten nach Delphi importieren kann, will ich nun in die Tabelle einfach Werte eintragen können und diese dann nach Access exportieren und speichern.
wie kann ich das realisieren?

hier mal der Quellcode bisher:
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGrids, StdCtrls, DB, ADODB, Menus;

type
  TForm1 = class(TForm)
    Button1: TButton;
    DataSource1: TDataSource;
    ADOTable1: TADOTable;
    DBGrid1: TDBGrid;
    MainMenu1: TMainMenu;
    Datei1: TMenuItem;
    ffnen1: TMenuItem;
    N1: TMenuItem;
    Speichern1: TMenuItem;
    Speichernunter1: TMenuItem;
    N2: TMenuItem;
    Beenden1: TMenuItem;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Beenden1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  close;
end;

// Hinzufügen der Laufzeitanbindung
procedure TForm1.FormCreate(Sender: TObject);
var verz: string;
begin
  // Ermitteln des aktuellen Pfades
  verz := ExtractFilePath(ParamStr(0));
  with ADOTable1 do
    begin
      try
        ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+verz+'db1.mdb;Mode=Read|Write|Share Deny None;Persist Security Info=False';
        TableName := 'db1';
        Active := true
      except
        Beep;
        ShowMessage('Die Datenbank DB1.MDB befindet sich nicht '+ #10#13 + 'im aktuellen Verzeichnis '+verz)
    end
  end
end;

procedure TForm1.Beenden1Click(Sender: TObject);
begin
  close;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  // hier soll die aktuelle Tabelle in Access gespeichert werden
end;

end.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: geändertes DBGrid in Access speichern

  Alt 6. Mär 2006, 15:13
Hallo.

Du arbeitest mit einer Datenbank. Die Änderungen, die du im DBGrid machst, kannst du mit dem DBNavigator explizit bestätigen oder implizit durch das Wechseln des aktuellen Datensatzes. Du erkennst den Erfolg deiner Bemühungen an dem geänderten Symbol im aktuellen Datensatz des DBGrid. Ein Speichern, wie du es von einer Textdatei gewohnt sein magst, gibt beim Arbeiten mit Datenbanken nicht.

Grüße vom marabu
  Mit Zitat antworten Zitat
ksh
(Gast)

n/a Beiträge
 
#3

Re: geändertes DBGrid in Access speichern

  Alt 6. Mär 2006, 15:20
aha!

wäre folgendes auch möglich?
z.B. von Delphi aus Access mit meiner DB öffnen und dann speichern....

habe in dem Kochbuch zwar etwas über Access-Reports drucken gelesen, aber leider steht nichts genaueres da! nur, dass es über die OLE-Schnittstelle geht...
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#4

Re: geändertes DBGrid in Access speichern

  Alt 6. Mär 2006, 15:24
Wie meinst du das? Möchtest du bestimmte Daten aus der Datenbank in einer Datei speichern - quasi eine Exportfunktion realisieren?

marabu
  Mit Zitat antworten Zitat
ksh
(Gast)

n/a Beiträge
 
#5

Re: geändertes DBGrid in Access speichern

  Alt 6. Mär 2006, 15:34
also, soll folgendermaßen funktionieren:

lese mit Hilfe von ADO aus Access eine DB ein. Dann führe ich (in naher Zukunft) Berechnungen aus und schreibe die Werte in die Tabelle. und jetzt soll die ganze Tabelle wieder ins Access rein.

würde es auch mal als Export betiteln wenn ich das so lese...
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#6

Re: geändertes DBGrid in Access speichern

  Alt 6. Mär 2006, 15:39
Warum willst du die Daten nicht gleich in der Datenbank ändern? Ein Export ist nicht sehr schwer zu realisieren, wenn du das Exportformat erstmal festgelegt hast, aber wenn du keine guten Gründe für diese Vorgehensweise hast, dann empfehle ich dir direkt mit der Datenbank zu arbeiten.

marabu
  Mit Zitat antworten Zitat
ksh
(Gast)

n/a Beiträge
 
#7

Re: geändertes DBGrid in Access speichern

  Alt 6. Mär 2006, 15:51
weil es sehr komplexe mathematische Berechnungen sind, die auch zu den jeweiligen Daten umgeändert werden müssen. es werden sozusagen die Ausgangsdaten per Access angegeben.
es existiert ein altes Modell in Pascal, weswegen es jetzt in Delphi umgesetzt werden soll.

und wie ist das jetzt mit dem exportieren?
  Mit Zitat antworten Zitat
ksh
(Gast)

n/a Beiträge
 
#8

Re: geändertes DBGrid in Access speichern

  Alt 6. Mär 2006, 17:33
hallooooo!

kann mir denn niemand sagen wie ich das expotieren kann????
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#9

Re: geändertes DBGrid in Access speichern

  Alt 6. Mär 2006, 17:49
Musst du gleich randalieren, nur weil ich meine Lebensmittel einkaufe?

Zum Exportieren iterierst du über einen DataSet (z.B. ADOQuery) und schreibst die Daten in deinem gewünschten Format weg - hier CSV - so oder ähnlich:

Delphi-Quellcode:
var
  s: TStrings;
begin
  s := TStringList.Create;
  // die Query braucht eine Connection
  with ADOQuery do
  begin
    SQL.Text := 'select * from tabelle';
    Open;
    while not Eof do
    begin
      s.Clear;
      for i := 0 to Pred(FieldCount) do
        // hier besser den Feldtyp auswerten
        s.Add(Fields[i].AsString);
      // anstatt DeinExport() hier eine Anzeige
      ShowMessage(s.CommaText);
      Next;
    end;
    Close;
  end;
  s.Free;
end;
Nimm dir die Online-Hilfe und informiere dich über die verwendeten Klassen und Methoden.

marabu
  Mit Zitat antworten Zitat
ksh
(Gast)

n/a Beiträge
 
#10

Re: geändertes DBGrid in Access speichern

  Alt 7. Mär 2006, 09:52
na gut, was zu essen ist noch erlaubt!

Ich versuche gerade die ganze Zeit schlau zu werden. aber leider will die Hilfe nicht so wie ich oder umgekehrt!

Hab ein ADOQuery eingebaut, die DataSource eingestellt und den ConnectionString eingegeben.
Wenn ich den Namen der Tabelle eingebe bekomme ich diese Message mit den Daten.
ABER:
Exportieren mache ich ja gar nicht oder wie?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 16:20 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