SQL Server 2008 R2: los datos se truncan cuando se ejecutan a través de un trabajo programado pero no a través de la línea de comandos

StackOverflow https://stackoverflow.com/questions/6022768

Pregunta

Uso de SQL Server 2008 R2 y puedo hacer que un proceso funcione perfectamente mientras lo ejecuta. Cuando lo configuré para correr como un trabajo, el campo binario se está truncando a 2kb (2048 caracteres) cada vez. A continuación se presentan los detalles de exactamente lo que está pasando.

Aquí está el proceso básico mi procedimiento almacenado.

  • Construya dinámicamente la declaración SQL que inserta un conjunto de datos (generalmente de 10 a 15 filas) de un servidor vinculado a una variable de tabla definida por el usuario. (El conjunto de datos básicamente contiene información sobre fotos. MIME / TIPO, PEDIDO, DESCRIPCIÓN, Y EL BINARIO (o la BLOB) de la foto específica.)
  • que la variable de la tabla se pasa luego a otro procedimiento almacenado que guarda el conjunto de datos

    Como se indicó anteriormente, cuando ejecuto el procedimiento almacenado, el proceso funciona perfectamente. El blob es un completo y genera una excelente foto. Sin embargo, cuando se ejecuta el procedimiento almacenado a través de un trabajo programado, la cadena binaria se trunca después de 2048 caracteres. Y esto sucede cada vez sin fallar.

    He podido determinar que el truncamiento proviene de la Declaración de OpenQuery que estoy usando para sacar los datos del servidor vinculado, pero no puedo averiguar por qué está sucediendo durante el trabajo programado y no cuando acaba de ejecutar eso. Pensaría que era un problema de permiso, simplemente fracasaría en recuperar nada.

    Gracias de antemano por su ayuda, Will

¿Fue útil?

Solución

Eche un vistazo a la documentación en BOL para el tamaño de texto, e intente configurarlo a un valor mayor en el Proc almacenado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top