Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Datenbank (https://www.delphipraxis.net/104289-datenbank.html)

Seppel 1. Dez 2007 08:15

Re: Datenbank
 
Zitat:

Zitat von mkinzler
Hast du den namen der DB dem Pfad zugefügt?

Also der String sieht so aus:
Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=C:\Dokumente und Einstellungen\Sebastian\Desktop\Apezdb\neu\db1.mdb ;Mode=Share Deny None;Extended Properties="";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

Ich muss ja dann ein '' machen und dann + Exe...+ '' was meisnte jetzt soll ich dann noch bei dem Ex... db1.mdb hinschreiben? in dioe Klammern?

Also so siehts mom aus:
Delphi-Quellcode:
Adoconnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source='+ExtractFilePath( ParamStr(0))+';Mode=Share Deny None;Extended Properties="";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:Dont Copy Locale on Compact=False;'+'Jet OLEDB:Compact Without Replica Repair=False;'+'Jet OLEDB:SFP=False';
Adoconnection1.Connected := true;
Es kommt jetzt ein fehler, und zwar Installierbares ISAM nicht gefunden.

mkinzler 1. Dez 2007 08:28

Re: Datenbank
 
Delphi-Quellcode:
...Data Source='+ExtractFilePath( ParamStr(0))+'db1.mdb+';...

Seppel 1. Dez 2007 08:31

Re: Datenbank
 
Zitat:

Zitat von mkinzler
Delphi-Quellcode:
...Data Source='+ExtractFilePath( ParamStr(0))+'db1.mdb+';...

Das hab ich eben auch schon getestet trodzdem kommt "Installierbares ISAM nicht gefunden."


Das muss ich ja auch machen, da ja alles deaktiviert ist oder?
Delphi-Quellcode:
Adoconnection1.Connected := true;
Query1.Active := true;

DeddyH 1. Dez 2007 08:54

Re: Datenbank
 
Zur Designzeit alle Verbindungen kappen, zur Laufzeit Connectionstring zusammensetzen und verbinden.

Seppel 1. Dez 2007 08:55

Re: Datenbank
 
Zitat:

Zitat von DeddyH
Zur Designzeit alle Verbindungen kappen, zur Laufzeit Connectionstring zusammensetzen und verbinden.

Is ja gemacht:
Delphi-Quellcode:
Query1.Close;
Adoconnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source='+ExtractFilePath( ParamStr(0))+'db1.mdb'+';Mode=Share Deny None;Extended Properties="";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:Dont Copy Locale on Compact=False;'+'Jet OLEDB:Compact Without Replica Repair=False;'+'Jet OLEDB:SFP=False';
Adoconnection1.Connected := true;
Query1.Active := true;
edit: Ich denke auch es funktioniert nur es sagt immer ISAM nicht gefunden, was auch immer das ist!

DeddyH 1. Dez 2007 09:00

Re: Datenbank
 
Versuch es mal mit Format.

Seppel 1. Dez 2007 09:08

Re: Datenbank
 
Zitat:

Zitat von DeddyH
Versuch es mal mit Format.

?
Meinste ich soll alles in Format = Reinschreiben und dann Format nur bie Adoconnection.string angeben??

DeddyH 1. Dez 2007 09:13

Re: Datenbank
 
Ich habe das hier gerade mal unter Linux mit Lazarus ausprobiert. Sieht eigentlich ganz gut aus (testen kann ich es natürlich nicht):
Delphi-Quellcode:
const sConn = 'Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=%sdb1.mdb;'+
              'Mode=Share Deny None;Extended Properties="";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';
var Pfad: string;
begin
  Pfad := IncludeTrailingPathDelimiter(ExtractFilePath(ParamStr(0)));
  ShowMessage(Format(sConn,[Pfad]));
end;

Seppel 1. Dez 2007 09:20

Re: Datenbank
 
Zitat:

Zitat von DeddyH
Ich habe das hier gerade mal unter Linux mit Lazarus ausprobiert. Sieht eigentlich ganz gut aus (testen kann ich es natürlich nicht):
Delphi-Quellcode:
const sConn = 'Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=%sdb1.mdb;'+
              'Mode=Share Deny None;Extended Properties="";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';
var Pfad: string;
begin
  Pfad := IncludeTrailingPathDelimiter(ExtractFilePath(ParamStr(0)));
  ShowMessage(Format(sConn,[Pfad]));
end;

Ok das funzt.
Danke. Also, du hast folgendes gemacht oben hast du ne constante definiert und mkit dem %s hast du dann später fürs Format gemacht, damit du dann den Pfad reinschreiben kannst, wo es gerade liegt.

DeddyH 1. Dez 2007 09:23

Re: Datenbank
 
Genau so ;). Wenn sich der Pfad ändert, macht das somit nichts.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:04 Uhr.
Seite 3 von 4     123 4      

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