2

sprocは次のとおりです。

ALTER PROC [dbo].[cms_createNoteMultipleRecID] (
  @NoteDt smalldatetime, 
  ...
  @NoteIDCSV VARCHAR(max) OUTPUT
)

そして、これがVBScriptです。

cmd.CommandText = "cms_createNoteMultipleRecID"
cmd.Parameters.Append = cmd.CreateParameter("@RC", adInteger, adParamReturnValue)
cmd.Parameters.Append = cmd.CreateParameter("@NoteDt", adDBDate, adParamInput,, NoteDt )
...
cmd.Parameters.Append = cmd.CreateParameter("@NoteIDCSV", adLongVarWChar, adParamOutput )

何度か使用したことがあるので、adLongVarWCharは入力に対して機能するようです。しかし、VBScriptでvarchar(max)出力を使用する適切な方法は何ですか?現状では、「パラメータオブジェクトが正しく定義されていません。一貫性のない、または不完全な情報が提供されました。」というエラーが表示されます。ADODBから。

4

2 に答える 2

3

これは機能します:

cmd.Parameters.Append = cmd.CreateParameter("@NoteIDCSV", adBStr, adParamOutput, -1 )

より良いアイデアを受け入れる。

于 2010-12-09T18:46:03.763 に答える
2

size 引数をCreateParameterに設定し-1ます。これが構文だと思います(現時点ではテストできません):

cmd.Parameters.Append = cmd.CreateParameter("@NoteIDCSV", adLongVarWChar, adParamOutput, -1 )
于 2010-12-09T18:28:06.407 に答える