DataAdapter Designer und Parameterübergabe

29/01/2008 - 13:23 von Manfred Koschinski | Report spam
Hallo,

mal wieder ein so spezielles Problem, dass bestimmt niemand eine Atnwort
weiß... Aber vielleicht kann der eine oder andere MVP meine Problem
wenigstens an Microsoft weitergeben, falls es keine Lösung dafür gibt.

Es geht darum, dass ich im DataSet-Designer von VS 2008 eine
Datenbanktabelle per Drag/Drop eingefügt hat, für die das VS auch gleich
einen DataAdapter erstellt hat. Im Prinzip müsste ich also nur die
Fill-Methode aufrufen und schon hab ich meine Daten.
Jetzt will ich aber mit der Fill-Methode auch ein Argument mitgeben, um
nàmlich meine Spalte "PersonID" (integer) für einen bestimmten Wert zu
filtern.
Kein Problem: Ich gehe im Adapter-Designer auf "Configure" und gebe von Hand
am Ende des SQL-Kommandos "WHERE PersonID=@personID" ein und beende den
Wizard ordentlich. Anschließend steht mir eine Fill-Methode zur Verfügung,
die als Argument einen integer-Wert erwartet.

Jetzt aber die Problematik: Ich will nicht auf einen einzigen Wert filtern,
sondern eine Werteliste. Dafür schreibt man im SQL z.B. "WHERE PersonID IN
(1,2,5,8)". Jetzt hab ich analog im DataAdapter-Designer das hier
eingegeben:
"WHERE PersonID IN (@personIDList)". Aber da erzeugt immer Konflikte, denn
als @personIDList wird immer ein integer-Wert erwartet, kein string.

Ich hab wirklich alles versucht, ich kriegs einfach nicht hin. Hat jemand
ein "How-To-Step-By-Step" für mich, oder gibt es tatsàchlich keine Lösung
für mein Problem?

Vielen Dank !!!!
 

Lesen sie die antworten

#1 Peter Fleischer
29/01/2008 - 21:42 | Warnen spam
"Manfred Koschinski" schrieb im Newsbeitrag
news:

mal wieder ein so spezielles Problem, dass bestimmt niemand eine Atnwort
weiß... Aber vielleicht kann der eine oder andere MVP meine Problem
wenigstens an Microsoft weitergeben, falls es keine Lösung dafür gibt.



Hi Manfred,
Probleme kannst du auch selbst am MS schicken:-)

...
Jetzt aber die Problematik: Ich will nicht auf einen einzigen Wert
filtern,
sondern eine Werteliste. Dafür schreibt man im SQL z.B. "WHERE PersonID IN
(1,2,5,8)". Jetzt hab ich analog im DataAdapter-Designer das hier
eingegeben:
"WHERE PersonID IN (@personIDList)". Aber da erzeugt immer Konflikte, denn
als @personIDList wird immer ein integer-Wert erwartet, kein string.



SQL làsst als Übergabewerte keine Listen zu.

Ich hab wirklich alles versucht, ich kriegs einfach nicht hin. Hat jemand
ein "How-To-Step-By-Step" für mich, oder gibt es tatsàchlich keine Lösung
für mein Problem?



Die einfachste Lösung ist eine UDP, der du die Liste übergibst. In der UDP
setzt du pro Listenlement ein Select ab und übergibst das Ergebnis in die
Pipe.

Viele Gruesse

Peter

Ähnliche fragen