首页 > 解决方案 > 我想将行数分配给“变量”

问题描述

我想将总行数分配给名为"@row_count"的变量。

DECLARE @row_count int
SET @row_count = SELECT COUNT(*) FROM information

我知道。我做错了。但我还没有找到任何关于如何做到这一点的信息。


我想做这样的事情:

CREATE PROC add_person
(
    @id tinyint,
    @name nvarchar(max),
    @surname nvarchar(max),
    @salary int,
    @job nvarchar(max)
)
AS
BEGIN
    INSERT INTO information
    VALUES(@id,@name,@surname,@salary,@job)
END

DECLARE @row_count nvarchar(max)
SET @row_count = SELECT COUNT(*) FROM information

BEGIN TRAN
add_person 34,'asdf','asdf',3000,'asdf'
IF @row_count > 33
    ROLLBACK TRAN
ELSE
    COMMIT TRAN
GO;

我的目标是:如果人数超过三十四人,则防止增加新人。

标签: sqlsql-server

解决方案


您可以尝试如下

DECLARE @row_count int;
SELECT @row_count = COUNT(*) FROM information;

推荐阅读