SQL Server 2008 R2: Dados sendo truncados ao funcionar através de um trabalho agendado, mas não através da linha de comando
-
14-11-2019 - |
Pergunta
Usando o SQL Server 2008 R2 e posso obter um processo para funcionar perfeitamente enquanto a execução. Quando configurei para executar como um trabalho, o campo binário está sendo truncado para 2kb (2048 caracteres) a cada momento. Abaixo estão os detalhes do que está acontecendo.
Aqui está o processo básico meu procedimento armazenado.
- Construir dinamicamente a instrução SQL que insere um conjunto de dados (geralmente 10 a 15 linhas) de um servidor vinculado para uma variável de tabela definida pelo usuário. (O conjunto de dados contém basicamente informações sobre fotos. Mime / tipo, ordem, descrição e o binário (ou o blob) da foto específica.)
- Essa variável de tabela é então passada para outro procedimento armazenado que salva o conjunto de dados
Como afirmado antes, quando executo o procedimento armazenado, o processo funciona perfeitamente. O blob é completo e gera uma foto de ótima aparência. No entanto, quando o procedimento armazenado é executado através de um trabalho agendado, a cadeia binária é truncada após 2048 caracteres. E isso acontece a cada momento sem falhar.
Eu consegui determinar que o truncamento está vindo da instrução Openquery que estou usando para tirar os dados do servidor vinculado, mas não consigo descobrir por que está acontecendo durante o trabalho agendado e não quando eu apenas corro isto. Eu acho que era uma questão de permissão, seria simplesmente de recuperar qualquer coisa.
Agradecemos antecipadamente por sua ajuda, será
Solução
Dê uma olhada na documental em Bol para Textsize, e tente configurá-lo para um valor maior no Proc armazenado.