2010-08-04 10 views
0

J'exécute SQL dynamique,SQL Server SQL dynamique

sqlQuery = " SELECT "; 
sqlQuery += _Allowed + " , "; 
sqlQuery += " + cast("; 
sqlQuery += " _ID as nvarchar) "; 
sqlQuery += " FROM "; 
sqlQuery += " TBL_SUCCESS "; 

quand je l'exécute supposé renvoyer des valeurs communes séparées comme 2,4,5 dans une seule colonne

au lieu qu'il renvoient des valeurs dans la colonne séparée

mon MyDataTable suppose que pour remplir

Column1 
2,4,5 

mais remplit

column1 column2 column3 
2   4   5 

Comment obtenir la sortie?

+1

il n'y a rien de magique à propos de la chaîne sql, distincte des autres chaînes. Si vous l'imprimez, tout comme vous imprimez toute autre chaîne, vous verrez la chaîne finale exacte qui sera envoyée à la base de données. à partir de là, vous pouvez probablement deviner ce que vous voulez modifier, le faire ressembler à ce que vous voulez, et une fois que vous le savez, vous pouvez probablement trouver comment y parvenir dans votre chaîne SQL dynamique. –

Répondre

1

Besoin de voir la valeur de _Allowed de savoir quoi d'autre qui se passe, mais vous devez au devis moins mis autour de la virgule et concaténer dans l'instruction SQL, comme ceci:

sqlQuery += _Allowed + " + ' , ' ";