CREATE PROCEDURE spCountTableRowWHere
@TblName VARCHAR(50),
@TblID VARCHAR(10) = 'Id',
@WhereClause NVARCHAR(500) = '1=1'
AS
BEGIN
DECLARE @Query NVARCHAR(500)
DECLARE @ParamDefinition NVARCHAR(40)
DECLARE @Count INT
SET @Query = 'SELECT @C = COUNT('+@TblID+') FROM '+@TblName+' WHERE '+@WhereClause
SET @ParamDefinition = '@C INT OUTPUT'
EXECUTE SP_EXECUTESQL @Query, @ParamDefinition, @C = @Count OUTPUT
SELECT @Count
END
I am new in SQL and I am wondering if this kind of procedure is better than a separate procedures for different tables.
Aucun commentaire:
Enregistrer un commentaire