【发布时间】:2023-03-21 15:11:01
【问题描述】:
我目前正在学习如何在 SQL Server 环境中创建存储过程。
我有一个正在使用的查询块,它与 Joes2Pros SQL 服务器系列一起使用。
T-SQL 语法目前如下所示:
Use JProCo
GO
CREATE PROCEDURE sp_GetProductListByCategory @Category VarChar(50)
AS
BEGIN
SELECT ProductID, ProductName, RetailPrice
FROM dbo.CurrentProducts
WHERE Category = @Category
END
EXECUTE sp_GetProductListByCategory 'No-Stay'
运行此代码会得到如下所示的结果:
(80 row(s) affected)
(80 row(s) affected)
(80 row(s) affected)
(80 row(s) affected)
(80 row(s) affected)
(80 row(s) affected)
(80 row(s) affected)
(80 row(s) affected)
(80 row(s) affected)
(80 row(s) affected)
(80 row(s) affected)
(80 row(s) affected)
我所期待的是一个充满结果和记录的表格。相反,查询似乎运行了很多次。我想知道的是:
为什么这似乎运行了很多次?我没有看到任何会在这个逻辑集中创建循环的东西。 (我尝试了上面没有 BEGIN 和 END 语句的 T-SQL 代码,并且存在相同的行为)
【问题讨论】:
标签: sql-server-2008 tsql