Hallo,
ich würde gerne unter LabVIEW mit dem SQL Toolkit auf alle Resultsets
einer stored procedure zugreifen. Allerdings kann ich mit folgendem vi immer nur das erste Resultset einsehen.
Gibt es da eine Möglichkeit?
Vielen Dank
Gerhard
[
attachment=27229]
[
attachment=27228]
(LabVIEW 8.5)
Also der SQL-Befehl ist schon seltsam. Du unterbrichst mitten mit im String mit ";".
Das ist doch bei SQL das Befehlsende.
Außerdem ist eine "Stored-Procedure" doch eine "Funktion" (zumindest unter PostgreSQL). Die kann man dort mit
Code:
SELECT Funktionsname (Parameter1, Paramter2);
aufrufen, wobei die Parameter an die DB übergeben werden. Dort wird was damit gemacht und es wird außerdem ein Rückgabewert an LabVIEW zurückgegeben.
Und je nachdem, was dort (direkt in der DB) als Rückgabewert programmiert wurde, bekommt man auch das Ergebnis zurück.
Also, wie es aussieht, liegt es an Deinem SQL-Befehl. An Deinem LabVIEW-Programm sehe ich spontan keinen Fehler.
Oder meinst Du mit Resultsets was anderes?
Gruß Markus
Hallo Markus,
sorry vielleicht habe ich mich nicht verständlich ausgedrückt. Der zweigeteilte SQL-Befehl (select 12 + 6 as ResA; select 'A' as cola , 23 as colb;) sollte folgendes verdeutlichen, vergiss ihn einfach.
Folgende schon existiente stored proc. möchte ich gerne so verwenden, dass ich alle 3 Resultsets (Ergebnisse der Queries ) in LabVIEW einlesen kann.
CREATE PROCEDURE [dbo].[myproc]
AS
select col_a , col_b
from tab1
select col_c , col_d , col_e
from tab2
select col_1
from tab3
END
Der oben gepostete Code liefert mir immer nur das Ergebnis der ersten Query (select col_a , col_b from tab1) zurück.
Grüße Gerhard