![]() |
Datenbank: ADS • Version: 10.1 • Zugriff über: ODBC / ADO
Advantage , ODBC und SQL
Hallo Gemeinde,
ich stehe auf dem Schlauch. Ich greife auf eine ADS DB mit AdoQuery via ODBC zu. Das funktioniert soweit. Zum Problem: 1. SQL:='Select * FROM "C:\PATH\TABNAME.ADT";'; Query.Open; Funktioniert ! 2. SQL:='Select * FROM "C:\PATH\TABNAME1.ADT"; Select * FROM "C:\PATH\TABNAME2.ADT";'; Query.Open; Funktioniert nicht !!! commandtext gibt keine ergebnismenge zurück ExecSQL macht keinen Sinn, da ja ein Ergebnis erwartet wird. Wer kann mir helfen? |
AW: Advantage , ODBC und SQL
Kann den TADOQuery mit mehreren Resultsets zurecht kommen?
Ich denke hier musst du direkt auf die Basis-ADO-Interfaces zurückgreifen. |
AW: Advantage , ODBC und SQL
Danke für Deine Antwort,
normalerweise sollte es nur ein resultset geben. Das SQL: Select * INTO #Temp1 From "C:\ATB\Databases\192\sys\User.ADT"; Select * From #Temp1; funtzt auch nicht. Temp Tabellen zu nutzen, sollte doch wohl mit ADO möglich sein. Oder liegt das Problem in der ODBC? "ADS" unterstützt SQL scripting im SQL jedenfalls. |
AW: Advantage , ODBC und SQL
Wieso nimmst du bei ADS nicht die nativen Komponenten?
|
AW: Advantage , ODBC und SQL
Klar,
mache ich schon. Mit der ADSQuery geht das wunderbar. Ich versuche nur für einen Kunden eine ODBC Schnittstelle zu schaffen, und möchte die Möglichkeiten austesten, in wie weit die Kombination ODBC/ADO nutzbar ist. SQL-Performance,...usw. Im Ersten Schritt wäre wichtig, ob das Problem iM ADO oder der ODBC steckt. |
AW: Advantage , ODBC und SQL
Zitat:
Wenn Du die Ergebnismenge von 2 Selects gleichzeitig haben willst brauchst Du entweder 2 Query-Komponenten, oder Du schreibst den Select als eine Union (-> eine Ergebnismenge). |
AW: Advantage , ODBC und SQL
Danke für Deine Hilfe Patito,
nun habe ich folgendes Script probiert: // 1. Ergbnissmenge erzeugen Select * INTO #Temp1 From "C:\Databases\sys\User.ADT"; // 2. Ergbnissmenge erzeugen Select * From #Temp1; // 1. Ergbnissmenge wieder löschen DROP TABLE #Temp1; Sollte also nur eine Menge verbleiben. Auch: TRY DROP TABLE #Temp1; CATCH ADS_SCRIPT_EXCEPTION END TRY; Select * INTO #Temp1 From "C:\Databases\sys\User.ADT"; geht nicht. Ohne den TRY ...- Block geht es. Immer die selbe Meldung: Commandtext gibt keine Ergebnissmenge zurück Ich vermute langsam das verkettete SQL Anweisungen entweder von der ODBC oder von ADO nicht unterstützt werden. |
AW: Advantage , ODBC und SQL
Du willst augenscheinlich mit dem Kopf durch die Wand,
mit Ado und auch anderen Schnittstellen laufen Batch-SQL-Scripte nicht (so wie erwartet). Wenn du so etwas durchziehen willst mußt Du Dir Deine eigene Oberfläche erstellen. Was Deine Temp-Tabelle angeht, sollte sie wirklich eien Temp-Tabelle sein, so ist die Frage wie lange sie überlebt. Wenn keine Tabele dann keine Daten. Gruß K-H |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:16 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