1

我有 t-sql 标量函数来验证登录,当从管理工作室询问时效果很好:

select dbo.getLogin(N'نصير الفتلاوي',N'pass')

returns 1

当从 asp 页面使用表单字段作为参数时,它返回 0 尽管在 sql management studio 中粘贴时构造的 sql 返回 1

如果用户名不使用阿拉伯字母代码,那么它也适用于 asp。

SQL Server 版本是 2008,IIS 是 7.5,在 Windows Server 2003 上运行。它在 IE 10 和 Firefox 中的行为相同。

ASP 页面字符集是使用 meta 指令设置的 utf-8。

4

1 回答 1

0

当您从 ASP 调用 SQL Server 时,您的参数必须是 nvarchar。不是varchar。

这与将N前缀添加到原始 SQL 常量相同

于 2013-04-22T08:37:18.583 回答