IPB

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
> Auswählen von einer Spalte
Zet
post 07. Sep 2007, 10:23
Post #1


new Member
*

Group: Members
Posts: 5
Joined: 07.09.2007
Member No.: 35
LV Version: 7.1
Zertifizierung: keine
LV User seit: 2001



Hallo,

erstmal ein Lob für das Toolkit. Es ist einfach zu verstehen und mit den Beispielprogrammen hat man einen relativ schnellen Einstieg.
Ich habe nur ein Problem. Ich möchte in einer Tabelle eine Spalte auswählen (mit dem SELECT-Befehl). Als Ergebnis-Array bekomme ich alle Spalten, die der WHERE-Klausel entsprechen und nicht nur die eine.
Wähle ich mit dem selben VI zwei oder mehrere Spalten aus, funktioniert es tadellos. Woran kann das liegen?
Ich benutze LabVIEW 7.1 und auch das entsprechende Toolkit dafür.

Grüße Zet
Go to the top of the page
 
+Quote Post
CB
post 07. Sep 2007, 11:50
Post #2


proven Member
****

Group: Administrators
Posts: 315
Joined: 16.10.2006
From: Düsseldorf
Member No.: 2
LV Version: current
Zertifizierung: CLA
LV User seit: 2001



QUOTE(Zet @ 07. Sep 2007, 11:23) *
Hallo,

erstmal ein Lob für das Toolkit. Es ist einfach zu verstehen und mit den Beispielprogrammen hat man einen relativ schnellen Einstieg.
Ich habe nur ein Problem. Ich möchte in einer Tabelle eine Spalte auswählen (mit dem SELECT-Befehl). Als Ergebnis-Array bekomme ich alle Spalten, die der WHERE-Klausel entsprechen und nicht nur die eine.
Wähle ich mit dem selben VI zwei oder mehrere Spalten aus, funktioniert es tadellos. Woran kann das liegen?
Ich benutze LabVIEW 7.1 und auch das entsprechende Toolkit dafür.

Grüße Zet


Erstmal Danke für das Lob smile.gif

Kann es sein, dass du das "SELECT Simple" VI verwendest? bzw. kann ich mal den Code sehen oder einen Screenshot davon?

Normalerweise ist die Syntax:
SELECT spaltenname FROM tabellenname WHERE spaltenname=bedingungswert

wenn man die Zeilen aus einer Spalte der Tabelle auslesen möchte, die der Bedingung entsprechen.

Das "SELECT" bzw. "SELECT Simple" VI liefert IMMER ein 2D Array of Variant zurück, das muss man dann ggf. mit "Array indizieren" verkleinern.

Grüße
CB


--------------------
künstliche Intelligenz ist besser als natürliche Dummheit!
rotabench:rotierende Prüfstände nach dem Baukasten-Prinzip
Go to the top of the page
 
+Quote Post
Zet
post 07. Sep 2007, 12:26
Post #3


new Member
*

Group: Members
Posts: 5
Joined: 07.09.2007
Member No.: 35
LV Version: 7.1
Zertifizierung: keine
LV User seit: 2001



QUOTE(CB @ 07. Sep 2007, 12:50) *
Erstmal Danke für das Lob smile.gif

Kann es sein, dass du das "SELECT Simple" VI verwendest? bzw. kann ich mal den Code sehen oder einen Screenshot davon?

Normalerweise ist die Syntax:
SELECT spaltenname FROM tabellenname WHERE spaltenname=bedingungswert

wenn man die Zeilen aus einer Spalte der Tabelle auslesen möchte, die der Bedingung entsprechen.

Das "SELECT" bzw. "SELECT Simple" VI liefert IMMER ein 2D Array of Variant zurück, das muss man dann ggf. mit "Array indizieren" verkleinern.

Grüße
CB



Hallo,

ja, ich verwende das SELECT Simple VI. Ich habe es momentan genau so gelöst, dass ich das 2D-Array indiziere. Ich hatte nur eigentlich gehofft, dass man dann auch nur die eine Spalte als Ergebnis bekommt. Ich werde jetzt nochmal das normale SELECT-VI testen und dann mal schauen wink.gif

Grüße Zet
Go to the top of the page
 
+Quote Post
CB
post 07. Sep 2007, 21:12
Post #4


proven Member
****

Group: Administrators
Posts: 315
Joined: 16.10.2006
From: Düsseldorf
Member No.: 2
LV Version: current
Zertifizierung: CLA
LV User seit: 2001



QUOTE(Zet @ 07. Sep 2007, 13:26) *
Hallo,

ja, ich verwende das SELECT Simple VI. Ich habe es momentan genau so gelöst, dass ich das 2D-Array indiziere. Ich hatte nur eigentlich gehofft, dass man dann auch nur die eine Spalte als Ergebnis bekommt. Ich werde jetzt nochmal das normale SELECT-VI testen und dann mal schauen wink.gif

Grüße Zet


in dem Select Simple VI für LV 7.1 ist wohl noch ein Bug ...

ich mach jetz aber erstmal Urlaub, das fix ich wenn ich wieder zurück bin smile.gif

Das 2D Array of Variant ist durch durch die ADO Methoden so vorgegeben. Wenn ich das ändern wollte müsste ich quasi das SQL Statement vor dem abschicken parsen um zu ermitteln, wieviele Spalten denn nun zurückgegeben werden. Da aber so ein SQL Statement auch beliebig kompliziert werden kann, würde das einen relativ hohen Aufwand bedeuten, da ist es einfacher "mal eben" ein "Index Array" dahinter zu hängen ...

Grüße
CB


--------------------
künstliche Intelligenz ist besser als natürliche Dummheit!
rotabench:rotierende Prüfstände nach dem Baukasten-Prinzip
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



Lo-Fi Version Time is now: 28.03.2024 - 11:06