Système Web VB.net avec un backend SQL Server 2005. J'ai une procédure stockée qui retourne un varchar, et nous obtenons finalement des valeurs qui ne rentre pas dans un varchar (8000).Puis-je retourner un varchar (max) à partir d'une procédure stockée?
J'ai changé le paramètre de retour en un varchar (max), mais comment puis-je dire à la propriété OleDbParameter.Size d'accepter n'importe quelle quantité de texte?
Comme exemple concret, le code VB qui a obtenu le paramètre de retour de la procédure stockée utilisée pour ressembler à:
objOutParam1 = objCommand.Parameters.Add("@RStr", OleDbType.varchar)
objOutParam1.Size = 8000
objOutParam1.Direction = ParameterDirection.Output
Que puis-je faire .Size de travailler avec un (max)?
Mise à jour:
Pour répondre à quelques questions:
Pour toutes fins utiles, ce texte tous les besoins à venir comme un morceau. (Changer cela prendrait plus de travail structurel que je veux faire - ou suis autorisé pour, vraiment.)
Si je ne définis pas une taille, j'obtiens une erreur en lisant "String [6]: la propriété Size a une taille invalide de 0. "
Franchement - mon patron. Tout le système est construit sur la connexion OleDB, et je dois vivre avec. Croyez-moi, si j'architurais ça, je serais sur la meilleure version. (Bien sûr, si j'étais responsable, le sproc que j'essayais de réparer n'existerait même pas ...) –