Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi ADO Connection String zu lang.. (https://www.delphipraxis.net/86509-ado-connection-string-zu-lang.html)

Salomon 15. Feb 2007 07:57

Datenbank: Access • Zugriff über: ADO

ADO Connection String zu lang..
 
Hallo,
ich wollte den ADO Connection String im Quelltext zuweisen, um in diesem den Pfad zur DB anzupassen. Über die Komponenten Fenster geht das einwandfrei. Im Quelltext behauptet Delphi der String wäre mit über 255 Zeichen zu lang :?:

Ich dachte immer in einen Delphi String geht viel mehr?? Und wie umgehe ich das?

Delphi-Quellcode:
  ADOConnection.ConnectionString :=
'Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=U:\ActionDB.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;';
Thanx
Marcus

sirius 15. Feb 2007 08:03

Re: ADO Connection String zu lang..
 
Versuchs mal so:
Delphi-Quellcode:
  adoconnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;'+
                                    'User ID=Admin;Data Source=U:\ActionDB.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;';
Du kannst nicht mehr als 255Bytes in einer Zeile für den String definieren. Aber du kannst ihn teilen und mit "+" aneinanderfügen.

Salomon 15. Feb 2007 08:18

Re: ADO Connection String zu lang..
 
Das funktioniert. Danke :)
Mein Delphi Basiswissen ist wohl etwas eingestaubt. Aber das wird wieder :)

shmia 15. Feb 2007 09:37

Re: ADO Connection String zu lang..
 
Der Connectionstring darf übrigens viel kürzer sein.
Erst dadurch, dass das Property Connected auf True gesetzt wird, werden viele weitere Infos
in den Connectionstring aufgenommen.
Folgender Connectionstring ist ausreichend:
Code:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=U:\ActionDB.mdb;

Salomon 15. Feb 2007 10:49

Re: ADO Connection String zu lang..
 
Gut zu wissen :) Ich hatte den automatisch generierten einfach übernommen...


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:01 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz