AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Datenbankalias - Pfad der DBs muss dynamisch sein.
Thema durchsuchen
Ansicht
Themen-Optionen

Datenbankalias - Pfad der DBs muss dynamisch sein.

Ein Thema von LuckyStrike4life · begonnen am 4. Feb 2004 · letzter Beitrag vom 5. Feb 2004
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Memo
Memo

Registriert seit: 19. Aug 2003
509 Beiträge
 
Delphi 7 Enterprise
 
#11

Re: Datenbankalias - Pfad der DBs muss dynamisch sein.

  Alt 4. Feb 2004, 19:39
Als ich das mit dem Zuweisen schrieb, schwebte mir eigentlich was anderes vor. So wie oben geht natürlich auch, aber es ist doch etwas umständlich. Mal noch einen anderen Vorschlag :
Delphi-Quellcode:
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, DBTables, Grids, DBGrids,IniFiles,FileCtrl;

type
  TForm1 = class(TForm)
    DBGrid1: TDBGrid;
    Query1: TQuery;
    DataSource1: TDataSource;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
const
  SELDIRHELP = 1000;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var i : Integer;
    inifile : TIniFile;
    dir : String;
begin
  try
    inifile := TInifile.Create(ChangeFileExt(ParamStr(0), '.ini'));
    if not inifile.SectionExists('Dir') then
    begin
       if SelectDirectory(dir, [sdAllowCreate, sdPerformCreate, sdPrompt],SELDIRHELP) then
          inifile.WriteString('Dir', 'Pfad' ,dir) ;
    end else
      dir :=inifile.ReadString('Dir', 'Pfad', 'ERROR');
      for i:=0 to Form1.ComponentCount-1 do
      begin
        if Form1.Components[i] is TQuery then
         begin
           TQuery(Components[i]).DatabaseName := dir;;
           TQuery(Components[i]).Open
         end;
      end;
  finally
    inifile.Free;
  end;
end;
Denn ob das Verbauen der Pfadangaben in eine Query immer so das Wahre ist? Zumindist halte ich es für unübersichtlich bis (bei vielen Querys) störend.
  Mit Zitat antworten Zitat
LuckyStrike4life

Registriert seit: 22. Jul 2003
Ort: SN
105 Beiträge
 
Delphi 5 Enterprise
 
#12

Re: Datenbankalias - Pfad der DBs muss dynamisch sein.

  Alt 5. Feb 2004, 07:46
Memo,
das ist sicher auch ne Lösung aber die ist ja noch wesendlich umfangreicher.

Es ist an sich auch nicht dir frage ob die Inifile bereits existiert, ich lasse sie einfach mit dem Setup Programm in den entsprechenden Ordner schreiben.
Denn ich kann es den 200 DAUs nicht zumuten, selber irgendwas einstellen zu müssen.

Allerdings
TQuery(Components[i]).DatabaseName := dir;;
TQuery(Components[i]).Open
ist wichtig, ich muss ja auch die Tabellen auf die Pfade weisen, in der Form werde ich das auch machen, allerdings ohne Schleife.

Sollte ich auf Probleme stoßen bei meinem Source, dann werde ich mich deinem widmen.
- ich kann doch wirklich nichts -
  Mit Zitat antworten Zitat
Benutzerbild von Memo
Memo

Registriert seit: 19. Aug 2003
509 Beiträge
 
Delphi 7 Enterprise
 
#13

Re: Datenbankalias - Pfad der DBs muss dynamisch sein.

  Alt 5. Feb 2004, 09:39
Zitat von LuckyStrike4life:
Sollte ich auf Probleme stoßen bei meinem Source, dann werde ich mich deinem widmen.
Danke.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 09:26 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