Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi TADOQuery Komponente unidirektionalen Datenmenge (https://www.delphipraxis.net/164090-tadoquery-komponente-unidirektionalen-datenmenge.html)

Kevin11 2. Nov 2011 11:56

AW: TADOQuery Komponente unidirektionalen Datenmenge
 
Hallo,

mit der normalen Select-Abfrage geht ja alles problemlos.

ConnectionString:
Delphi-Quellcode:
Provider=SQLOLEDB.1;Password=***;Persist Security Info=True;User ID=***;Initial Catalog=datenbank;Data Source=servername
Ich greife mit ADO auf die MS-SQL Datenbank zu und schreibe es per Firebird 2.0 in eine andere aktuellere Datenbank.

Das letzte Projekt war genau das selbe, nur habe ich auf Acces via ADO Zugegriffen.

Komische Sache :?

Kevin11 3. Nov 2011 08:00

AW: TADOQuery Komponente unidirektionalen Datenmenge
 
Also ich weiß jetzt, dass wenn ich eine ADOQuery auf die Form ziehe und damit arbeite, geht alles. Hat irgendjemand schoneinmal eine ADOQuery Kompontente im Code erzeugt? Fehlen bei mir evtl. wichtige Eigenschaften?

Kevin

Bernhard Geyer 3. Nov 2011 08:05

AW: TADOQuery Komponente unidirektionalen Datenmenge
 
Zitat:

Zitat von Kevin11 (Beitrag 1133973)
Das letzte Projekt war genau das selbe, nur habe ich auf Acces via ADO Zugegriffen.

Bei Access solltest du immer mit Curserlocation clUseServer arbeiten.

Jumpy 3. Nov 2011 08:08

AW: TADOQuery Komponente unidirektionalen Datenmenge
 
Delphi-Quellcode:
procedure test;
var
  q:TADOQuery;
Begin
  q:=TADOQuery.Create(self oder nil oder ...);
  q.SQL.Text:='Select * From MyTable';
  try
    q.Connection:=MyADOConnection; //gehe mal davon aus, das MyADOConnection konfiguriert auf der Form liegt
    q.Open;
  finally
    q.Close;
End;
So würd ich das machen und so ähnlich hast du das doch auch gemacht.
Liegts vllt. an der Connection, dass du den Connection-String anders aufgebaut hast, als du die Connection auf die Form gezogen hast?

Kevin11 3. Nov 2011 08:15

AW: TADOQuery Komponente unidirektionalen Datenmenge
 
Also ich habe jetzt ein 2. Projekt neu gemacht und baue dort alles Zeile für Zeile nach und dort erzeuge ich alle Querys die ich brauche und es kommt kein Fehler.

Kevin11 3. Nov 2011 08:48

AW: TADOQuery Komponente unidirektionalen Datenmenge
 
Jetzt habe ich Probleme mit der Erstellung von dem TClientDataSet.

Delphi-Quellcode:
  zqJuInsert := TClientDataSet.Create(zqJuInsert);
  with zqJuInsert do
  begin
    ProviderName := 'Form2.DataSetProviderSQL';
    CommandText := 'SELECT * FROM JU_STAMM';
    Open;
  end;
Wenn ich den ProviderName so zuweise:
Delphi-Quellcode:
515: ProviderName := Form2.DataSetProviderSQL;
[DCC Fehler] funktionen.pas(515): E2010 Inkompatible Typen: 'string' und 'TDataSetProvider'

DeddyH 3. Nov 2011 08:54

AW: TADOQuery Komponente unidirektionalen Datenmenge
 
Was sagt die Hilfe dazu?
Zitat:

Befindet sich der Provider in derselben Anwendung wie die Client-Datenmenge, muss er dieselbe übergeordnete Komponente (Owner) wie die Client-Datenmenge besitzen. Soll ein lokaler Provider mit anderem Owner genutzt werden, verwenden Sie stattdessen die Methode SetProvider.

Kevin11 3. Nov 2011 08:59

AW: TADOQuery Komponente unidirektionalen Datenmenge
 
Zitat:

Zitat von DeddyH (Beitrag 1134178)
Was sagt die Hilfe dazu?
Zitat:

Befindet sich der Provider in derselben Anwendung wie die Client-Datenmenge, muss er dieselbe übergeordnete Komponente (Owner) wie die Client-Datenmenge besitzen. Soll ein lokaler Provider mit anderem Owner genutzt werden, verwenden Sie stattdessen die Methode SetProvider.

Ich habe es jetzt so gemacht und die Fehler Meldung bleibt gleich:
Delphi-Quellcode:
  zqJuInsert := TClientDataSet.Create(Form2.DataSetProviderSQL);
  with zqJuInsert do
  begin
    ProviderName := 'Form2.DataSetProviderSQL';
    CommandText := 'SELECT * FROM JU_STAMM';
    Open;
  end;
Fehler: Fehlernder Daten-Provider oder Datenpaket

DeddyH 3. Nov 2011 09:00

AW: TADOQuery Komponente unidirektionalen Datenmenge
 
Und das soll jetzt derselbe Owner sein? Schau nochmal genau hin.

Kevin11 3. Nov 2011 09:23

AW: TADOQuery Komponente unidirektionalen Datenmenge
 
Jetzt kommt der Fehler:

Änderung am CommandText sind nicht gestattet.

Delphi-Quellcode:
  zqJuInsert := TClientDataSet.Create(Form2);
  with zqJuInsert do
  begin
    Close;
    ProviderName := 'Form2.DataSetProviderSQL';
    CommandText := 'SELECT * FROM JU_STAMM';
    Open;
  end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:00 Uhr.
Seite 2 von 3     12 3      

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