我想将表的结果存储在变量中。我知道结果总是一列和一条记录。这是我的代码:
if ((select count(id) from Categorie where naam = 'Hobbyclub') = 1)
begin
declare @id int set select id from Categorie where naam = 'Hobbyclub';
insert into Items(naam, categorieID) values ('Naaien', @id);
print 'ok';
end
else
print 'nok';
它在关键字set
附近发出以下错误:
语法错误
如何在@id
中存储第一个记录和第一列商店。
请注意,categorieID
(insert
语句)也是类型为int
的记录。
答案 0 :(得分:1)
以下是分配变量的一种方法:
2015-08-22 20:51:02.965000+00:00
2015-08-29 10:07:35.933000
这是另一个:
DECLARE @id INT;
SELECT @id = id FROM Categorie WHERE naam = 'Hobbyclub';
如果您使用的是SQL Server 2008或更高版本,则可以将最后一个缩写为:
DECLARE @id INT;
SET @id = (SELECT id FROM …);