0

レコードセットを出力するストアド プロシージャがありますが、そのレコードセットをループすると、1 つの項目だけが書き戻されます。

たとえば、次のように記述します。

vbsRS("fldDateSubmitted")&vbsRS("fldSubmittedBy")&vbsRS("fldDiaryEntry")

vbsRS("fldDateSubmitted")次のように書いた場合にのみ値が表示されます。

vbsRS("fldSubmittedBy")&vbsRS("fldDiaryEntry")

値のみが表示されvbsRS("fldSubmittedBy")ます。

これは意味がありません。誰かがこの問題に光を当てることができますか?

ストアド プロシージャの呼び出しは次のとおりです。

With objCMD
  .ActiveConnection = vbsConn
  .CommandType = adCmdStoredProc
  .CommandText = "sp_GetTherapyDiaryEntries"

  ' Stored procedure parameters
  .Parameters.Append .CreateParameter("@WaltonNumber",adInteger, adParamInput)
  .Parameters.Append .CreateParameter("@EpisodeID",adInteger, adParamInput)
  .Parameters.Append .CreateParameter("@TherapyType",adInteger, adParamInput)

  .Parameters("@WaltonNumber") = vbsZhospitalnumber
  .Parameters("@EpisodeID") = vbsZEpisodeID
  .Parameters("@TherapyType") = 2

  set vbsRS = .Execute
End With
4

1 に答える 1

0

私は答えを見つけました。

これが発生する理由は、VARCHAR(MAX) としていくつかのデータ型があるためです。明らかにこれはバグです。それらを VARCHAR(2000) または任意の数値に変更すると、問題が解決します。

于 2013-06-29T21:12:30.753 に答える