Я пытаюсь выполнить команду вставки в базу данных, и один из столбцов имеет тип nvarchar (MAX). Команда вставки создается с использованием класса .NET SqlCommand, и каждый из параметров представлен одним объектом SqlParameter.
Моя команда выполняется всегда, но когда я передаю строку, длина которой большая (10000+ символов) и которая используется в качестве значения для SqlParameter, сопоставленного столбцу типа nvarchar (MAX) после вставки, этот конкретный столбец оставлено пустым Повторяю, исключение не выдается, команда INSERT выполнена, но столбец пуст.
Следующие примеры показывают, как я пытался создать параметр:
// message is the large string variable
// first solution
insertCommand.Parameters.Add("@message", SqlDbType.NVarChar, -1);
// second solution
insertCommand.Parameters.Add("@message", SqlDbType.NVarChar, message.Length);
// third solution
insertCommand.Parameters.Add("@message", SqlDbType.NVarChar, message.Length * 2);
Ни одно из этих решений не дало результата. Если кто-то знает, в чем проблема, пожалуйста, сообщите мне.
Я использую MS SQL Server 2008.
Заранее спасибо.