存储过程在SQL中不能用

来源:百度知道 编辑:UC知道 时间:2024/06/04 05:42:14
假设用一个表为User 有ID和NAME两个字段
建立存储CREATE PROC PROC_EXISTS
(
@id NVARCHAR(20),
@name NVARCHAR(16),
@ReturnValue BIT OUTPUT
)
AS
IF EXISTS(selcet* from User where UserID=@id AND NAME=@name)
set @ReturnValue=1
ELSE
set @ReturnValue=0
GO
执行有错误,请大虾指点

CREATE PROCEDURE PROC_EXISTS
(
@id NVARCHAR(20),
@name NVARCHAR(16),
@ReturnValue BIT OUTPUT
)
AS
IF EXISTS(select* from User where UserID=@id AND NAME=@name)
set @ReturnValue=1
ELSE
set @ReturnValue=0
RETURN

select写错了
CREATE PROC PROC_EXISTS
(
@id NVARCHAR(20),
@name NVARCHAR(16),
@ReturnValue BIT OUTPUT
)
AS
IF EXISTS(select * from User where UserID=@id AND NAME=@name)
set @ReturnValue=1
ELSE
set @ReturnValue=0
GO

User,NAME 都是关键字,查询时在加上[],就不会出错了

CREATE PROC PROC_EXISTS
(
@id NVARCHAR(20),
@name NVARCHAR(16),
@ReturnValue BIT OUTPUT
)
AS
IF EXISTS(select * from [User] where UserID=@id AND [NAME]=@name)
set @ReturnValue=1
ELSE
set @ReturnValue=0
GO