存储过程 很简单的参数问题

来源:百度知道 编辑:UC知道 时间:2024/06/02 17:13:34
用存储过程写一个select查询,查询条件是字符串型,需要用单引号做定界符。

CREATE PROCEDURE [dbo].[登录]

@用户名 varchar(30),
@密码 varchar(30),
@表名 varchar(60)

AS

DECLARE @sql varchar(1000)
SET @sql='SELECT 权限 FROM '+@表名+' WHERE 用户名='+@用户名+' AND 密码='@密码
EXECUTE(@sql)

@用户名、@密码 需要用''括起来,请问如何写这个SQL语句?

字符串中用两个单引号来表示一个单引号。
CREATE PROCEDURE [dbo].[登录]

@用户名 varchar(30),
@密码 varchar(30),
@表名 varchar(60)

AS

DECLARE @sql varchar(1000)
SET @sql='SELECT 权限 FROM '+@表名+' WHERE 用户名='''+@用户名+''' AND 密码='''+@密码 +''''
EXECUTE(@sql)