Истекло время ожидания. Проблема при экспорте xml в таблицу данных sql server 2008 - .net

Я экспортирую XML-данные в базу данных sql server 2008.

.net-код: Как передать XML из C # в хранимую процедуру в SQL Server 2008?

Запрос для вставки: Запрос xml в sql server 2008

Все работает нормально, если размер файла небольшой. Теперь размер файла xml превышает 5 МБ. Это показывает ошибку тайм-аута. Как решить эту проблему.

Ошибка: истекло время ожидания. Время ожидания истекло до завершения операции или сервер не отвечает. Заявление было прекращено.

Гита.


person Geeth    schedule 31.08.2010    source источник


Ответы (2)


попробуйте использовать SqlBulkCopy Class: http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlbulkcopy.aspx

это будет лучшим вариантом, если размер данных больше. он будет вставлять ГБ данных за доли секунды.

Для решения вашей ошибки попробуйте следующее: SqlCommand.CommandTimeout

person anishMarokey    schedule 31.08.2010

Вы можете изменить время ожидания команды, например:

command.CommandTimeout = 3600;

Значение измеряется в секундах.

Однако вам может потребоваться изменить SQL для импорта XML. Часто можно повысить производительность, используя предложение OPENXML вместо метода типа данных nodes XML. См. документацию для получения информации и примеров о OPENXML.

person Daniel Renshaw    schedule 31.08.2010