我可以在登录后设置 App_Name() 的值吗?

Nic*_*ore 4 sql-server-2000

我有一个旧的应用程序,它通过 ODBC 连接到我的数据库服务器。我想发现存储过程中的应用程序名称是什么。由于 ODBC 软件不支持,我无法在登录时设置应用程序名称(或 xp_who2 中的 ProgramName 值)。登录后是否可以通过某些“设置”命令设置该值?

我知道还有其他方法可以解决此问题(例如使用应用程序名称调用我的存储过程),但我希望避免这种情况,因为它需要进行多次编码更改,而是在登录后立即为此会话执行某些操作。

db2*_*db2 5

使用 SET CONTEXT_INFO 怎么样?它需要一个 varbinary(128) 值,但您可以轻松地将其转换为 varchar 或任何合适的值。从 sysprocesses 读回它。

http://msdn.microsoft.com/en-us/library/aa259199(v=sql.80).aspx