Forums Neueste Beiträge
 

Datenbankabfrage mit IN

05/10/2007 - 11:18 von Volker Hofheinz | Report spam
Hallo,

wie programmiere ich folgende Datenbankabfrage in C#:

select * from capex_head where ch_editor in ('1','4','8')

Dabei geht es mir darum, dass der Ausdruck in Klammern als Parameter an die
Abfrage übergeben wird. Datentyp der Spalte ist NVarChar. Ich habe folgendes
Konstrukt versucht:

while (dr.Read())
{
user += " '";
user += dr[4].ToString();
user += "' ,";
}
Das sieht prinzipiell gut aus, leider führt SQL Server die abfrage trotzdem
nicht aus wenn das im C#-Programm làuft. Kopiere ich das ganze in das
Management Studio funktioniert es.

Was mache ich falsch oder wo ist der Haken. Danke für eure Hilfe.

Volker Hofheinz
 

Lesen sie die antworten

#1 Stefan Braumeister
05/10/2007 - 18:47 | Warnen spam
Volker Hofheinz schrieb:
Hallo,

wie programmiere ich folgende Datenbankabfrage in C#:

select * from capex_head where ch_editor in ('1','4','8')

Dabei geht es mir darum, dass der Ausdruck in Klammern als Parameter an die
Abfrage übergeben wird. Datentyp der Spalte ist NVarChar. Ich habe folgendes
Konstrukt versucht:

while (dr.Read())
{
user += " '";
user += dr[4].ToString();
user += "' ,";
}



Ergibt wohl sowas wie:

... in ('1','4','8',)
und somit einen Fehler.

Gib doch einfach deinen Zusammengebastelten SQL String aus und nutze den
dann um mal mit einem DB Query Tool das SQL auszuführen, der zeigt dir
dann genau die Stelle mit dem Fehler.

Gruß Stefan

Das sieht prinzipiell gut aus, leider führt SQL Server die abfrage trotzdem
nicht aus wenn das im C#-Programm làuft. Kopiere ich das ganze in das
Management Studio funktioniert es.

Was mache ich falsch oder wo ist der Haken. Danke für eure Hilfe.

Ähnliche fragen