create procedure usbinsertbookDatainto
@Bookno Numeric,
@studentno Numeric,
@currentnoofcopiesavaillable varchar(300),
@Issuedate datetime,
@Duedate datetime
AS
BEGIN
Insert into tbluseraccount
(
Bookno,
studentno,
currentnoofcopiesavaillable,
Issuedate,
Duedate
)
values
(
@Bookno,
@studentno,
@currentnoofcopiesavillable,
@Issuedate,
@Duedate
)
END
我得到的错误是:
Msg 156,Level 15,State 1,Procedure usbinsertbookDatainto,8号线 关键字附近的语法不正确 'AS'。
Msg 137,Level 15,State 2, 程序usbinsertbookDatainto,Line 22个
必须声明标量变量 “@currentnoofcopiesavillable”。
答案 0 :(得分:0)
删除第一次出现的“(”和“ 从你的变量列表中删除最后一个“,”
create procedure usbinsertbookDatainto
@Bookno Numeric,
@studentno Numeric,
@currentnoofcopiesavaillable varchar(300),
@Issuedate datetime,
@Duedate datetime
AS
BEGIN
Insert into tbluseraccount
(
Bookno,
studentno,
currentnoofcopiesavaillable,
Issuedate,
Duedate
)
values
(
@Bookno,
@studentno,
@currentnoofcopiesavillable,
@Issuedate,
@Duedate
)
END
答案 1 :(得分:0)
这只是一个错字:在存储过程的参数列表中,您有:
create procedure usbinsertbookDatainto
...
@currentnoofcopiesavaillable varchar(300),
并在您使用的代码中:
values(.....
@currentnoofcopiesavillable,
所以要更清楚:
Defined: @currentnoofcopiesavaillable
Used: @currentnoofcopiesavillable
确保输入与声明中使用的相同的变量名称!