任何人都请帮助我
这是我在SQL Server中的存储过程:
ALTER procedure ExistingBook
@title nvarchar(50),
@Author nvarchar(50),
@Number nvarchar(50)
as
declare @Sno as int
begin
if exists(select * from Students where Title = @title)
begin
select @Sno = count(*)
from Teacher
if (@Author='proof')
if (@Number>'20')
insert into Teacher(@Sno+1, Team, @title, getdate(),
@Number, PMName, Comments, ISBN, null, null)
select
Team, PMName, Comments, ISBN
from Students
where Title = @title
end
end
当我执行上述查询时,我收到错误
在此上下文中不允许使用“Team”这个名称。有效表达式是常量,常量表达式和(在某些上下文中)变量。不允许使用列名。
我知道上述查询的原因
我尝试以不同的方式执行查询,但记录重复
请有人帮助我
答案 0 :(得分:0)
插入查询未正确形成。
我想你想要像
这样的东西 INSERT INTO Teacher
(
col1,
col2,
col3,
col4,
col5,
col6,
col7,
col8,
col9
)
select
@Sno+1,
Team,
@title,
@Number,
PMName,
Comments,
ISBN,
null,
null
from Students
where Title=@title