0

SQLでは正常に動作します

SELECT NOID, NO_DOSSOIN, NO_ORDO, POSOLOG FROM dbo.ESPMEDS_ORDO_SORTIR
WHERE NO_DOSSOIN = @NO_DOSSOIN AND NOID IN (@NOIDIN)

SELECT NOID, NO_DOSSOIN, NO_ORDO, POSOLOG FROM dbo.ESPMEDS_ORDO_SORTIR
WHERE NO_DOSSOIN = 10 AND NOID IN (16,17)

しかし、これをdataset.xsdクエリに入れると、同じ出力が得られません。NOIDタイプは整数であるため、NOIDINパラメーターに複数のIDを入れることはできません

したがって、私のファイル DataSet.xsd は次のようにしか機能しません: Dataset.xsd ファイル SELECT NOID, NO_DOSSOIN, NO_ORDO, POSOLOG FROM dbo.ESPMEDS_ORDO_SORTIR WHERE NO_DOSSOIN = 10 AND NOID IN (16)

エラーは、データを文字列から整数に変換できないことを示しています

構造

4

1 に答える 1

0

を分離する必要がありNOIDINます。このウィザードでは常に文字列として表示され、コードから実行してもコンパイルされないInt32ように見えるを渡すことができると期待しないでください。16,17

ここに画像の説明を入力してください

最も簡単なオプションは、次のように2つの値で範囲を渡すことです。

SELECT NOID, NO_DOSSOIN, NO_ORDO, POSOLOG FROM dbo.ESPMEDS_ORDO_SORTIR WHERE NO_DOSSOIN = @NO_DOSSOIN AND NOID IN (@NOIDSTART, @NOIDEND)

そして、割り当てます:

@NOIDSTART = 16

@NOIDEND = 17

パラメータが動的である場合は、この記事を読む必要があります。

于 2012-07-03T13:43:09.247 に答える