Здравствуйте, Аноним, Вы писали:
А>Проблема в том, что в БД пишется какая-то усеченная ерунда, т.к. параметр для UPDATE определен так:
А>А>daBooks.UpdateCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@Dop_Sved", System.Data.SqlDbType.Image, 16, "DopSved"));
А>
А>Какой же size необходимо указывать или его все время нужно менять в зависимости от размера BLOBA
Никогда не работал с DataGrid-ом и ничего не могу сказать по этому поводу, но может поможет...
тип данных Image MSSQL Server-а всегда имеет фиксированный размер 16, и поэтому нет необходимости менять его от размера BLOB-a.
а для апдейта блоба достаточно выполнить:
SqlCommand sqlCmd = new SqlCommand("UPDATE someTable SET myBlobField = @rtf");
sqlCmd.Connection = m_MyConnection;
sqlCmd.Parameters.Add("@rtf", GetMyNewRichTextContent() /* вертает byte[] */);
sqlCmd.ExecuteNonQuery();
В твоей же ситуации, IMHO, "DopSved" колонка не содержит актуальный массив байтов нового rtf.