Как увеличить возможности извлечения данных агентом SQL Server 2005

У меня есть хранимая процедура для извлечения данных XML из веб-службы. Она работает, как я и ожидал. После тестирования некоторое время я хочу использовать этот хранимый процесс как ЗАПЛАНИРОВАННОЕ ЗАДАНИЕ, затем я создал новый с T-SQL «EXEC sp_GetData;» и получил неудачные результаты (ошибка 9400).

Я воспроизвел, что мой сохраненный процесс может работать нормально, если я выполняю его через окно редактора запросов (EXEC sp_GetData;), но не может работать, если получение данных представляет собой более 3 объектов, следующих за XML-данными через запланированное задание.

Вопрос: как увеличить агент SQL Server для извлечения всех данных (размер файла около 3 МБ), а затем вставить в определенную таблицу.

<ArrayOfEmployeeMobilesInfo xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://tempuri.org/">  
   <EmployeeMobilesInfo>
      <EmployeeCode>00001</EmployeeCode>
      <TitleEN>Mr.</TitleEN>
      <EmpNameEN>John</EmpNameEN>
      <EmpSurnameEN>Doe</EmpSurnameEN>
      <PositionNameEN>Police</PositionNameEN>
      <Title>Mr.</Title>
      <EmpName>John</EmpName>
      <EmpSurname>Doe</EmpSurname>
      <PositionName>Police</PositionName>
      <CenterCode>PP777</CenterCode>
      <Location>PP</Location>
      <Email>[email protected]</Email>
      <DivisionCode>PPD77</DivisionCode>
      <DivisionName>PPD77</DivisionName>
      <DepartmentCode>PDD25</DepartmentCode>
      <DepartmentName>PDD25</DepartmentName>
      <PositionLevel>POC</PositionLevel>
      <PositionWeight>H</PositionWeight>
      <JoinDate>2013-10-01T00:00:00</JoinDate>
      <Mobiles>
         <Mobile>
           <MobileNo>1500111232</MobileNo>
         </Mobile>
      </Mobiles>
      <TerminateDate xsi:nil="true" />
   </EmployeeMobilesInfo>

... x 2

</ArrayOfEmployeeMobilesInfo>

мой сохраненный процесс.

SET NOCOUNT ON;

DECLARE @URL NVARCHAR(500);
DECLARE @obj INT;

IF OBJECT_ID('xml_employees', 'U') IS NOT NULL DROP TABLE xml_employees;
IF OBJECT_ID('Employees', 'U') IS NOT NULL DROP TABLE Employees;
CREATE TABLE xml_employees ( resp XML );

SET @URL = 'http://localhost/DataService/Employee.asmx/GetEmployees';

EXEC sp_OACreate 'MSXML2.ServerXMLHttp', @obj OUT
EXEC sp_OAMethod @obj, 'Open', NULL, 'GET', @URL , false
EXEC sp_OAMethod @obj, 'send'

INSERT xml_employees ( resp )
EXEC sp_OAGetProperty @obj, 'responseXML.xml'

Сообщение об ошибке

XML parsing: line 12, character 18, unexpected end of input [SQLSTATE 42000] (Error 9400).  The step failed.

Пожалуйста, дайте мне совет. Спасибо

РЕДАКТИРОВАТЬ 1: Попробуйте установить TEXTSIZE как упоминание об этой теме


person SweNz    schedule 26.08.2015    source источник


Ответы (1)


УСТАНОВИТЬ РАЗМЕР ТЕКСТА 2147483647; спаси мою задницу!

По умолчанию TEXTSIZE агента SQL Server составляет 4 КБ, НО мой экземпляр получил 1 КБ.

person SweNz    schedule 26.08.2015