Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Probleme mit ADO disconnecten (https://www.delphipraxis.net/46253-probleme-mit-ado-disconnecten.html)

azadking 21. Mai 2005 13:53

Datenbank: mssql • Version: Weiss net :D • Zugriff über: mit ado

Probleme mit ADO disconnecten
 
So ich kann mitterweile auf meine Externe MSSQL-Datenbank zugreifen und auch Befehler ausführen, so wie ich das wollte.

Nun habe ich aber ein Problem das ich nicht Disconnecten kann :wall:.
Ich hahe schon jeden Befehl probiert entweder bin ich blöde oder ich weiss es nicht. :wiejetzt:

Naja alle benutzen die ADOConnection1 wie kann ich die nun endgültig killen habe schon vieles probiert aber er ist irgendwie immer noch connecetd auch wenn er da dann false sagt :\

HELP :pale:

Bernhard Geyer 21. Mai 2005 18:35

Re: Probleme mit ADO disconnecten
 
Zitat:

Zitat von azadking
Naja alle benutzen die ADOConnection1 wie kann ich die nun endgültig killen habe schon vieles probiert aber er ist irgendwie immer noch connecetd auch wenn er da dann false sagt :\

ADO kann bei bedarf zusätzliche Connections zur DB aufbauen, wenn die default-Connection (hier deine ADOConnection1) belegt ist. Aber könntest Du ein Mini-Beispiel zeigen (Code) was Du eigentlich machst. Normalerweise sollte die ADOConnection alle über sie laufende Abfragen beenden wenn sie auf Disconnected gestellt wird.

Noch 'ne Frage: Welche Delphi-Version hast Du. Falls es D5 ist, hast du auch alle Patches (vor allem den ADOExpress-Patch) eingespielt?

azadking 22. Mai 2005 12:59

Re: Probleme mit ADO disconnecten
 
also ich benutze delphi 7

d.h ist z.b adoconnection1
Delphi-Quellcode:
AdoConnection1.ConnectionString:='Provider=SQLOLEDB.1;Password='+edit3.text+';Persist Security Info=True;User ID='+edit2.text+';Data Source='+edit1.text+';Workstation ID=none';
der Connection string wird eingetragen mit den werten aus den edit feldern ip passwort und username. Sind die vorhanden wird connected. Habe versucht den string einfach bei klick auf Disconnect zu löschen aber das will er nicht :).

Delphi-Quellcode:
ADOCommand1.CommandText := 'master "'+edit4.Text+'"';
ADODataSet1.Recordset := ADOCommand1.Execute;
dann wird der code hier sehr oft benutzt da ich dort verschiedene Befehle die ich eingebe
abgearbeitet werden sollen. ich hatte dann einfach versucht bei den ganzen einzelnen ado ding die mit der connection verknüpft sind die connection:='' zu setzten damit sie den beuzg verlieren oder connected:=false zu setzen aber irgendwie scheint der sie beim klick zum befehl aus führen wie oben abgebildet wieder neu aufzubauen oder so...

Bernhard Geyer 22. Mai 2005 16:19

Re: Probleme mit ADO disconnecten
 
Zitat:

Zitat von azadking
... aber irgendwie scheint der sie beim klick zum befehl aus führen wie oben abgebildet wieder neu aufzubauen oder so...

Ist normal. Wenn Du eine Dataset-Componente aktiv schaltest, so wir automatisch wieder versucht die Connection aufzubauen. Und wenn im Connection-Objekt Passwort/User mit angegeben wird und LoginDialog auf False steht, erscheint ja auch kein Login-Dialog.

azadking 22. Mai 2005 19:40

Re: Probleme mit ADO disconnecten
 
fällt dir da spontan was ein wie ich das verhindern kann das er die connection wieder aufbaut... naja ich könnte bei dem disconnect button einfach danach den exec button wie er bei mir heißt enabled=false setzen schon wird er nicht versuchen die connection wieder aufzubauen. Aber ich glaube trotzdem nicht das die dann unterbrochen ist ich werde das mal mit netstat -a prüfen.... weil wenn ich noch nicht vorher meinen connect button benutzt habe und dann einfach so was ausführen will gibt er auch ne fehlermeldung das er nicht connected ist.

Achja weisst du zufällig auch wie ich die Fehlermeldungen abfangen und editeiren kann ado macht das ja von sich aus.

Bernhard Geyer 22. Mai 2005 21:16

Re: Probleme mit ADO disconnecten
 
Zitat:

Zitat von azadking
fällt dir da spontan was ein wie ich das verhindern kann das er die connection wieder aufbaut... naja ich könnte bei dem disconnect button einfach danach den exec button wie er bei mir heißt enabled=false setzen schon wird er nicht versuchen die connection wieder aufzubauen.

Ich würde die entsprechenden Oberflächeneingaben deaktivieren wenn die verbindung deaktiviert ist.

Zitat:

Zitat von azadking
Achja weisst du zufällig auch wie ich die Fehlermeldungen abfangen und editeiren kann ado macht das ja von sich aus.

Eigentlich nur indem du mittels try...except die entsprechenden Codeblöcke einkapselst und die Meldung dann "umtextest".

azadking 22. Mai 2005 22:29

Re: Probleme mit ADO disconnecten
 
das ja gerade die sache :) wie kann ich die denn umtexten :D

Bernhard Geyer 22. Mai 2005 22:36

Re: Probleme mit ADO disconnecten
 
Delphi-Quellcode:
try
  ADOQuery.SQL ....
  ADOQuery.Execute
except
  ShowMessage('Fehler bei aktion xyz, bla bla bla');
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:31 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 by Thomas Breitkreuz