Sql server 2005 在sql server 2000和sql server 2005中,suser_sname()在不同情况下返回值

Sql server 2005 在sql server 2000和sql server 2005中,suser_sname()在不同情况下返回值,sql-server-2005,sql-server-2000,Sql Server 2005,Sql Server 2000,我在SQLServer2000和SQLServer2005中都有一个小写的用户名“abc” 首先,我通过SQLServer2000登录,输入用户名为“ABC”。登录后,我运行了查询“SELECT SUSER_SNAME”,结果是caps中的“ABC” 但是,如果我通过输入用户名“ABC”登录到SQLServer2005,并运行查询“selectSuser_SNAME”,我得到的结果是小写字母的“ABC” 谁能告诉我为什么在SQLServer2005中我会变成这样。我需要在不改变上述查询的情况下以

我在SQLServer2000和SQLServer2005中都有一个小写的用户名“abc”

首先,我通过SQLServer2000登录,输入用户名为“ABC”。登录后,我运行了查询“SELECT SUSER_SNAME”,结果是caps中的“ABC”

但是,如果我通过输入用户名“ABC”登录到SQLServer2005,并运行查询“selectSuser_SNAME”,我得到的结果是小写字母的“ABC”

谁能告诉我为什么在SQLServer2005中我会变成这样。我需要在不改变上述查询的情况下以大写字母显示结果


提前感谢。

只需将大写字母改为UPPER@Mitch:我希望在不更改代码的情况下得到相同的结果。那么我猜你运气不好。这两台服务器是否具有相同的区域设置和DB排序规则?不幸的是,它们都具有相同的区域设置和排序规则:我的英语背叛了我。您能检查一下这两台服务器上的登录名是如何拼写的吗?需要明确的是,当您在SSM中打开节点安全登录时,它们是否有所不同?我的SQLServer2008显示的loginname与上面写的一模一样。