从 SQL 服务器存储过程返回数据
Returning Data from a SQL Server stored procedure
我想问一下我怎么去 return count(*)
因为每次我调用存储过程时,它只是打印结果。
这是代码:
ALTER PROCEDURE sp_returnCount
@tblname sysname
, @colname sysname
, @key varchar(10)
AS
DECLARE @sql nvarchar(4000)
DECLARE @num INT
DECLARE @params NVARCHAR (4000)
SELECT @sql = 'SELECT COUNT(*) ' +
' FROM dbo.' + quotename(@tblname) +
' WHERE ' + quotename(@colname) + ' LIKE @key'
EXEC sp_executesql @sql, N'@key varchar(10)', @key
--just prints 5 or any numbers...
我想 return count(*)
在另一个查询中使用它。提前致谢。
ALTER PROCEDURE sp_returnCount
@tblname sysname
, @colname sysname
, @key varchar(10)
AS
DECLARE @sql nvarchar(4000)
DECLARE @num INT
DECLARE @params NVARCHAR (4000)
DECLARE @count int
SELECT @sql = 'SELECT @count = COUNT(*) ' +
' FROM dbo.' + quotename(@tblname) +
' WHERE ' + quotename(@colname) + ' LIKE @key'
EXEC sp_executesql @sql, N'@key varchar(10), @count int OUTPUT', @key, @count OUTPUT
我想问一下我怎么去 return count(*)
因为每次我调用存储过程时,它只是打印结果。
这是代码:
ALTER PROCEDURE sp_returnCount
@tblname sysname
, @colname sysname
, @key varchar(10)
AS
DECLARE @sql nvarchar(4000)
DECLARE @num INT
DECLARE @params NVARCHAR (4000)
SELECT @sql = 'SELECT COUNT(*) ' +
' FROM dbo.' + quotename(@tblname) +
' WHERE ' + quotename(@colname) + ' LIKE @key'
EXEC sp_executesql @sql, N'@key varchar(10)', @key
--just prints 5 or any numbers...
我想 return count(*)
在另一个查询中使用它。提前致谢。
ALTER PROCEDURE sp_returnCount
@tblname sysname
, @colname sysname
, @key varchar(10)
AS
DECLARE @sql nvarchar(4000)
DECLARE @num INT
DECLARE @params NVARCHAR (4000)
DECLARE @count int
SELECT @sql = 'SELECT @count = COUNT(*) ' +
' FROM dbo.' + quotename(@tblname) +
' WHERE ' + quotename(@colname) + ' LIKE @key'
EXEC sp_executesql @sql, N'@key varchar(10), @count int OUTPUT', @key, @count OUTPUT