Datos truncados y no ejecuta procedimiento SQL

Hola Hernán, tal vez me puedas ayudar con el siguiente código:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[seguridad_dar_privilegios]
                @grupo_base_desde_dnd_se_copia as varchar (10),
                @grupo_a_copiar as varchar (10)
AS
    BEGIN
        declare @empresacod as varchar (10),
                @sentencia as varchar (5000)
        declare empresas cursor for
                select conjunto from dbo.conjunto
                where conjunto <> '' +@grupo_base_desde_dnd_se_copia+ '' order by conjunto
        open empresas
        fetch next from empresas into @empresacod
            while @@fetch_status = 0
                  begin
                set @sentencia =
'insert into dbo.privilegio_ex (usuario, conjunto, accion)
select usuario, '' +@empresacod+ '' , accion from dbo.privilegio_ex
where usuario = '' +@grupo_a_copiar+ '' and conjunto = '' +@grupo_base_desde_dnd_se_copia+ ''
and usuario+cast(accion as varchar(15)) not in (select usuario+cast(accion as varchar(15))
from dbo.privilegio_ex where usuario = '' +@grupo_a_copiar+ '' and conjunto = '' +@empresacod+ '')'
                begin transaction
                EXEC (@sentencia)
                  commit transaction
               fetch next from empresas into @empresacod
            end
            close empresas
            deallocate empresas
    END
Al ejecutarlo, me da el siguiente error: 
Msg 8152, Level 16, State 14, Line 1
String or binary data would be truncated.
The statement has been terminated.
¿Qué estoy haciendo mal?, Saludos y muchas gracias. Francisco
Respuesta
1
Revisa en la linea que te indica el warning. Seguramente estas asignando a un campo string una cadena de longitud mayor a la que acepta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas