Constancia icon

SQL_PROC_ID_NUEVO

Constancia | PRO | 12/07/14 09:45:11 PM UTC | 0 ⭐ | 274 👁️ | Never ⏰ | []
PL/SQL |

1.3 KB

|

None

|

0 👍

/

0 👎

 /* ================================================
 -- ******** LLAMADA
 
    DECLARE @ID NUMERIC
     
    --SELECT * FROM tbCargas ORDER BY IDCarga DESC
     
    EXEC @ID = dbo.ID_NUEVO 'CARTERA.dbo.tbClientes','IdCliente'
     
    PRINT @ID
   
   ================================================ */
     
    -- DROP PROCEDURE ID_NUEVO
    CREATE PROCEDURE [dbo].[ID_NUEVO]
                --***>> PARÁMETROS
                @TABLA CHAR(100),
                @COL_ID CHAR(20)
               
    --RETURNS NUMERIC
   
   
    AS
    BEGIN
   
    --DECLARE @TABLA VARCHAR(50)
    --SELECT @TABLA = 'tbCargas'
           
    DECLARE @SQL NCHAR(255)
    DECLARE @MAX_ID NUMERIC
           
    --SELECT COL_ID = COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_NAME = @TABLA
     
    SELECT @SQL = 'SELECT @MAX_ID = MAX(' + @COL_ID + ') FROM ' + @TABLA
    EXECUTE sp_executesql @SQL ,N'@MAX_ID varchar(30) OUTPUT', @MAX_ID=@MAX_ID OUTPUT
     
    IF @MAX_ID IS NULL
    BEGIN
        SELECT @MAX_ID = 0
    END
    ELSE
    BEGIN
         SELECT @MAX_ID =@MAX_ID + 1     
    END     
   
    RETURN @MAX_ID
     
    --PRINT 'TABLA : ' + @Tabla
    --PRINT 'COLUMNA ID : ' + @@COL_ID
    --PRINT 'SQL : ' + @SQL
     
    --PRINT 'MAX ID : '  + CONVERT(VARCHAR,@MAX_ID)
           
END
 
GO

Comments