Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi ADO-BD wird nicht gefunden (https://www.delphipraxis.net/151316-ado-bd-wird-nicht-gefunden.html)

Delbor 12. Mai 2010 14:15

Datenbank: Access • Version: 2000 • Zugriff über: ADO

ADO-BD wird nicht gefunden
 
Hi zusammen

Crossposts sind sonst nicht mein Ding, aber ich glaube, jetzt bleibt mir keine andere Wahl.
Ich habe mittlerweile folgenden Code:
Delphi-Quellcode:
procedure TBudgetMaster.ToolButton1Click(Sender: TObject);
  var S: WideString;
begin
  S :='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;'+
      'Data Source=D:\RAD_Studio32Corner\BudgetMaster2009\BudgetDatabase\BudgetMasterDB.mdb;'+
      'Mode=ReadWrite;Jet OLEDB:System database="";Jet OLEDB:Registry Path="";'+
      'Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;'+
      'Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password=""'+
      ';Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;'+
      'Jet OLEDB:Don''t Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;'+
      'Jet OLEDB:SFP=False';
  if AdoConnection1.Connected then
    AdoConnection1.Close;
  AdoConnection1.ConnectionString := S;
  AdoConnection1.Open;
  if ADODataSet1.Active then
     ADODataSet1.Close;
  ADODataSet1.CommandText := 'SELECT * FROM BudgetMasterDB.Artikel_Tabele';
  ADODataSet1.Open;
 
//  AdoQuery2.Close;
//  AdoQuery2.SQL.Clear;
//  AdoQuery2.SQL.Add('SELECT*FROM BudgetMasterDB.Artikel_Tabele');
//  AdoQuery2.Open;
end;
Die Datenbankdatei befindet sich in einem Ordner im Programmverzeichnis, in der *dfm steht genau dieser Pfad, und obiger ConnectionString lautet genau so. Nur die Fehlermeldung bei Aufruf meint, dass direkt im Programmverzeichnis keine mdb zu finden sei... Wenn sich die *.mdb direkt im Programmverzeichnis befindet, kriege ich jeweils die Fehlermeldung, in dem Programmverzeichnis-Unterordner sei keine *.mdb zu finden. Wäre ja 'ne Lachnummer, wenn's nicht so Nervenaufreibend wäre...

Hat irgendjemand eine Idee, an was das liegen könnte?

Ach ja: ich arbeite seit einiger Zeit mit Win7. Unter WinXP war es nicht möglich, mit dbExpress auf MySQL zuzugreifen, unter Win7 klappte das auf Anhieb...

Gruss
Delbor

s.h.a.r.k 12. Mai 2010 14:30

Re: ADO-BD wird nicht gefunden
 
Ich denke, du hast schon alle nötigen Rechte, oder?

Delbor 12. Mai 2010 14:41

Re: ADO-BD wird nicht gefunden
 
Hi Shark

Ja, das habe ich überprüft, Ich kann zwar noch nicht behaupten, dass ich die Win7-Benutzerverwaltung schon voll im Griff habe. Aber bei der DB bin ich der Besitzer, bzw. das aktuelle Benutzerkonto. Allerdings nur mit Admin-rechten, aber das sollte reichen.

Gruss
Delbor

rawi 12. Mai 2010 15:02

Re: ADO-BD wird nicht gefunden
 
Hallo Delbor,

versuchs mal statt

Zitat:

mit ADODataSet1.CommandText := 'SELECT * FROM BudgetMasterDB.Artikel_Tabele';
mit

ADODataSet1.CommandText := 'SELECT * FROM Artikel_Tabele';

Gruß rawi

Delbor 12. Mai 2010 15:34

Re: ADO-BD wird nicht gefunden
 
Hi rawi

Hmm... Sag mal, weisst du nicht zufälig ein gutes Versteck?
Das bräuchte ich jetzt nämlich dringend, nachdem ich die Ursachen überall gesucht habe, nur nicht im SQL-String :oops:

Da gibt's nur eines : dringend mehr mit SQL arbeiten!!!
Klappt jedenfalls einwandfrei!

Vielen Dank!

Gruss
Delbor


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