AGB  ·  Datenschutz  ·  Impressum  







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

BDE zu ADO

Ein Thema von Conrad2 · begonnen am 28. Nov 2005 · letzter Beitrag vom 3. Feb 2006
Antwort Antwort
Conrad2

Registriert seit: 28. Nov 2005
2 Beiträge
 
#1

BDE zu ADO

  Alt 28. Nov 2005, 21:13
Datenbank: ACCESS • Version: 2003 • Zugriff über: ADO
HI erstmal!!

hab ein wenig rumgesucht aber nichts genaues dazu gefunden...


also meine frage:
ich soll ein programm was eine ACCESS 97 datenbank mit bde ausließt so umschreiben, dass es auch neuere Datenbanken öffnen kann! dazu muss ich dann ja allerdings mit ADO darauf zugreifen!

ich hab in dem programm die prozedur zum öffnen der datenbank und ich hab auch schon das tutorialprogramm zu ADO/ACCESS gemacht... nur weiss ich jetzt nicht wie ich die tabelle in mein programm bekomme ohne alles möglich umschreiben zu müssen...

Könnt ihr mir helfen?

Hier mal die Source:
Delphi-Quellcode:
procedure OeffneDB(Pfad: String);
  var AliasParams: TStringList;
  begin
    with FMain do begin
      Table1.Active := false;
      AliasParams := TStringList.Create;
      AliasParams.Values['Database Name'] := Pfad;
      with Session do begin
        Close; Open; // aktualisieren
        DeleteAlias('DAV');
        AddAlias('DAV','MSACCESS', AliasParams);
      end;
      Database1.DatabaseName := 'DAV'; // keine Passwortabfrage
      with Table1 do begin
        DatabaseName := 'DAV';
        TableName := 'Stammdaten';
        Active := true;
      end;
      Datasource1.Dataset := Table1;
    end
  end;
Vielen Dank sconmal

C.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: BDE zu ADO

  Alt 28. Nov 2005, 22:09
Hilft dir das ADO-Tutorial mit Access
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Conrad2

Registriert seit: 28. Nov 2005
2 Beiträge
 
#3

Re: BDE zu ADO

  Alt 28. Nov 2005, 22:49
Erstmal danke für die schnelle antwort!!

Also ich hab das tutorial schon gemacht

bekomm auch ne datenbank geöffnet

nur wie kann ich dann in meiner prozedur das so ändern, dass ich die tabelle aus dem ADO-Zugriff als Table1 definieren kann?
geht das überhautp?

Danke C.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: BDE zu ADO

  Alt 29. Nov 2005, 08:11
Hast Du dir schon die Beispiele von Delphi unter <Delphi>\Demos\Ado angeschaut?

Wenn Du mit BDE halbwegs fit bist ist ADO kein Problem. Der Grundsätzliche umbau erfolgt:

TDatabase -> TADOConnection
TTable -> TADODataset
TQuery -> TADODataset

und anschließden TADODataset wieder mit TADOConnection verbinden. Evtl. sind einige Einstellungen
umzustellen (CursorLocation sollte bei Access immer auf clUseServer stehen).

man könnte zwar auch

TTable -> TADOTable
TQuery -> TADOQuery

machen (weniger Propery-Einstellungsaufwand) aber TADOTable/TADOQuery haben im Detail Implementierungsfehler/ungereimtheiten.


Und in allen Funktionen/Prozeduren/Methoden ersetz du TTable/TQuery durch TADODataset oder noch besser durch TDataset. (TDataset ist die Basisklasse und wenn du irgendwann mal mehr DBMS-Systeme unterstützen willst ist das von Vorteil).
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
th3lol

Registriert seit: 26. Dez 2005
18 Beiträge
 
#5

Re: BDE zu ADO

  Alt 1. Feb 2006, 20:08
Delphi-Quellcode:
      Database1.DatabaseName := 'DAV'; // keine Passwortabfrage
      with Table1 do begin
        DatabaseName := 'DAV';
        TableName := 'Stammdaten';
Könnte diesen Part mal einer in ADO umschreiben? Bzw was muss ich für TableName und DatabaseName bei TADODataset verwenden? und was bei TADOConnection für DatabaseName?


Gruß
  Mit Zitat antworten Zitat
th3lol

Registriert seit: 26. Dez 2005
18 Beiträge
 
#6

Re: BDE zu ADO

  Alt 2. Feb 2006, 19:30
Zitat von th3lol:
Delphi-Quellcode:
      Database1.DatabaseName := 'DAV'; // keine Passwortabfrage
      with Table1 do begin
        DatabaseName := 'DAV';
        TableName := 'Stammdaten';
Könnte diesen Part mal einer in ADO umschreiben? Bzw was muss ich für TableName und DatabaseName bei TADODataset verwenden? und was bei TADOConnection für DatabaseName?


Gruß

Weiß hier denn keiner Rat? Oder macht ihr alle noch BDE?

Greetz und hoffnung auf hilfe
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: BDE zu ADO

  Alt 2. Feb 2006, 19:41
1, Neue Frage -> Neuer Thread

2, Wird duch die Demos die unter <DelphiInstDir>\Demos\Ado vorhanden sind nichts klar?
Aber schau dir mal die Properties Connection und CommandText an.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#8

Re: BDE zu ADO

  Alt 2. Feb 2006, 20:09
Bei ADO sind die ConnectionStrings der Dreh- und Angelpunkt.
Delphi-Quellcode:
const
// DB_PROVIDER = 'Microsoft.Jet.OLEDB.3.51'; // Access 97
   DB_PROVIDER = 'Microsoft.Jet.OLEDB.4.0'; // Access 2000

function MDBGetConnectionString(const MDBFile: string): string;
begin
   Result := Format('Provider=%s;Data Source=%s',[DB_PROVIDER,MDBFile]);
end;

  ADOConnection1.ConnectionString := MDBGetConnectionString('C:\AccessTestDB.mdb');
  ADOConnection1.Open;
  AdoTable1.TableName := 'Stammdaten';
  AdoTable1.Open;
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: BDE zu ADO

  Alt 3. Feb 2006, 08:16
Zitat von shmia:
Bei ADO sind die ConnectionStrings der Dreh- und Angelpunkt.
Delphi-Quellcode:
const
// DB_PROVIDER = 'Microsoft.Jet.OLEDB.3.51'; // Access 97
   DB_PROVIDER = 'Microsoft.Jet.OLEDB.4.0'; // Access 2000
Lass die Versionsangabe weg und Windows sucht automatisch die neueste Installierte JET-Version

DB_PROVIDER = 'Microsoft.Jet.OLEDB'
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Antwort Antwort


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