Risposte:
In questo caso usi -1.
Per quelli di noi che non hanno visto -1 di Michal Chaniewski, la riga di codice completa:
cmd.Parameters.Add("@blah",SqlDbType.VarChar,-1).Value = "some large text";
La dimensione massima di SqlDbType.VarChar è 2147483647.
Se dovessi usare una connessione oledb generica invece di sql, ho trovato qui che esiste anche un tipo di dati LongVarChar. La sua dimensione massima è 2147483647.
cmd.Parameters.Add("@blah", OleDbType.LongVarChar, -1).Value = "very big string";
Non è necessario passare il parametro size, basta dichiarare Varchar
già capisce che è MAX come:
cmd.Parameters.Add("@blah",SqlDbType.VarChar).Value = "some large text";
Se fai qualcosa del genere:
cmd.Parameters.Add("@blah",SqlDbType.VarChar).Value = "some large text";
la dimensione sarà presa da "un testo di grandi dimensioni" .Lunghezza
Questo può essere problematico quando si tratta di un parametro di output, non si ottengono più caratteri e si inserisce come input.