Проблема с обновлением столбца XML из .NET TableAdapter

Я пытаюсь обновить столбец XML в таблице SQL Server 2005. Доступ к этому столбцу осуществляется через хранимую процедуру. Я использую .NET tableAdapter для вызова этой процедуры. Проблема: значение столбца xml не обновляется.

Некоторые наблюдения:

  • Я использовал SqlProfiler, чтобы увидеть, действительно ли вызов хранимой процедуры отправляется на SQL Server. В этом случае.
  • Я также выполнил вызов хранимой процедуры непосредственно из SQL Server Management Studio. Когда это сделано таким образом, хранимая процедура выполняется.

Может ли это быть проблемой с параметрами, которые использует .NET tableAdapter? На мой взгляд, это будет единственная разница с вызовами SQL Server Management Studio.

Вот список:

  -- network protocol: TCP/IP
     set quoted_identifier on
     set arithabort off
     set numeric_roundabort off
     set ansi_warnings on
     set ansi_padding on
     set ansi_nulls on
     set concat_null_yields_null on
     set cursor_close_on_commit off
     set implicit_transactions off
     set language us_english
     set dateformat mdy
     set datefirst 7
     set transaction isolation level read uncommitted

person Community    schedule 31.08.2009    source источник


Ответы (1)


Когда вы пытались выполнить сохраненную процедуру вручную, использовали ли вы те же учетные данные, что и адаптер таблицы вашего приложения? Если нет, попробуйте выдать себя за пользователя и посмотрите, сможете ли вы увидеть ошибку, которую ваше приложение в настоящее время не обнаруживает.

Кстати, есть ли у вас в коде приложения обработку исключений для запроса к базе данных? Может случиться так, что возникает ошибка, но игнорируется, потому что вы ее не перехватываете.

person Darth Continent    schedule 31.08.2009
comment
Я использую интегрированную безопасность как для адаптера таблицы, так и для ручного теста, поэтому учетные данные одинаковы. У меня также есть код обработки исключений вокруг запроса. Никаких исключений не возникает. - person ; 01.09.2009
comment
Я обнаружил ошибку, я был в транзакции, которая не была зафиксирована. Считайте этот вопрос закрытым. - person ; 01.09.2009