sql >> Databáze >  >> RDS >> Sqlserver

Vrácení varchar(max) Výstupní parametr z uložené procedury se zkrátí na 4000 znaků

Váš předpoklad o připojovacím řetězci je na místě

Pro podporu VARCHAR(MAX) musíte místo SQLOLEDB.1 použít SQL Server Native Client. a NVARCHAR(MAX) datové typy, jinak budou zkráceny zpět na ekvivalenty SQLOLEDB.

Potom chcete používat následující definice parametrů

'For varchar(max) OUTPUT use;
Call cmd.Parameters.Append(cmd.CreateParameter("@detail", adLongVarChar, adParamOutput, -1, strDetail))

'For nvarchar(max) OUTPUT use;
Call cmd.Parameters.Append(cmd.CreateParameter("@detail", adLongVarWChar, adParamOutput, -1, strDetail))

'** Constants **
' adLongVarChar = 201
' adLongVarWChar = 203
' adParamOutput = 2



  1. Přeskočí úloha SQL Server plánované spuštění, pokud již běží?

  2. Vyberte data seskupená podle času přes půlnoc

  3. Jak zamíchat sloupec v MySql

  4. T-SQL String Functions:rozdíl mezi používáním Left/Right a Substring a podivné chování