none
stored procedure en sql server , tengo un error pero es por que quiero asignar un valor a variable1 de la tabla 2, que se encuentra en la tabla 1 RRS feed

Respuestas

  • Intenta ejecutar el procedimiento con los siguientes cambios:

    CREATE PROCEDURE dbo.sp_Regis    
        @text nvarchar(100),
        @fecha date
    AS
    BEGIN    
        DECLARE @idEmpleado int =
    	   (SELECT v1.id_empleado 
    	   FROM 
    		  CAT_empleado v1 
    		  INNER JOIN tabla_departamentoP v2 ON v2.id_empleado = v1.id_empleado
    	   WHERE v1.empleado = 'jorge' AND EXISTS(SELECT 1 FROM [CAT_REDES_SOCIALES] 
    		  WHERE v2.id_empleado = id_empleado AND empleado = 'jorge'));
    
        IF @idEmpleado IS NULL
        BEGIN
    	   PRINT 'EMPLEADO NO EXISTE';  
    	   THROW;  
        END
        ELSE
        BEGIN
    	   INSERT INTO tabla_departamentoP
    		  (id_user, id_empleado, texto, N, fechaHora, Estado, FechahoraS)
    	   VALUES      
    		  ('J12411', @idEmpleado, @text, 'N', @fecha, 1, GETDATE())
        END
    END
    GO


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    • Marcado como respuesta Moderador M lunes, 31 de julio de 2017 4:13
    jueves, 27 de julio de 2017 17:36

Todas las respuestas

  • 
    

    CREATE PROCEDURE sp_R    @variable1 nvarchar(50), @variable2  nvarchar(50),@parametro1 varchar(100),@parametro2 varchar(100) AS 'set @variable1 = select variable1.id_campo1 from tabla1 variable1

    inner join  tabla2 id_campo1 on variable2.id_campo=id_campo1.id_campo where campo='Hola'

    //Primero prueba asi

    set @variable1='Hola';

    if (@variable1= or <>'')then 'valida si no te retorna valor

    set @datamaster=CONCAT("insert into tt_datamaster("INSERT INTO PUBLICACIONES( id_campo2, id_campo1, campo3, campo4,campo6, campo8, fecha)

    VALUES      ('880054','",@variable1,"','Hola','k','2017-07-26 09:00:00', 1, ....())");

    ");     

    PREPARE stmt2 FROM @datamaster;      EXECUTE stmt2; deallocate prepare stmt2;

    end if ;



    GO  
    

    Pasa los puntos prro v:

    jueves, 27 de julio de 2017 16:14
  • Muestra imagenes de tus 2 tablas creo que estas relacionandolos mal !!

    Pasa los puntos prro v:

    jueves, 27 de julio de 2017 16:15
  • Intenta ejecutar el procedimiento con los siguientes cambios:

    CREATE PROCEDURE dbo.sp_Regis    
        @text nvarchar(100),
        @fecha date
    AS
    BEGIN    
        DECLARE @idEmpleado int =
    	   (SELECT v1.id_empleado 
    	   FROM 
    		  CAT_empleado v1 
    		  INNER JOIN tabla_departamentoP v2 ON v2.id_empleado = v1.id_empleado
    	   WHERE v1.empleado = 'jorge' AND EXISTS(SELECT 1 FROM [CAT_REDES_SOCIALES] 
    		  WHERE v2.id_empleado = id_empleado AND empleado = 'jorge'));
    
        IF @idEmpleado IS NULL
        BEGIN
    	   PRINT 'EMPLEADO NO EXISTE';  
    	   THROW;  
        END
        ELSE
        BEGIN
    	   INSERT INTO tabla_departamentoP
    		  (id_user, id_empleado, texto, N, fechaHora, Estado, FechahoraS)
    	   VALUES      
    		  ('J12411', @idEmpleado, @text, 'N', @fecha, 1, GETDATE())
        END
    END
    GO


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    • Marcado como respuesta Moderador M lunes, 31 de julio de 2017 4:13
    jueves, 27 de julio de 2017 17:36