从经典 ASP 连接时 SQL Server 中的应用程序名称

发布于 2024-12-01 07:04:00 字数 296 浏览 1 评论 0 原文

在我的连接字符串中,我添加了 Application Name=XX,这样我就可以从 SQL Server 中识别进程来自何处(sp_who2 - ProgramName 列)。从 .NET 连接时这非常有用。当我使用 Server.CreateObject("ADODB.Connection") 通过经典 ASP 进行连接时,SQL Server 将我的 ProgramName 识别为“Internet Information Services”。

有谁知道如何配置某些内容(连接字符串?IIS?sql?)以便 SQL Server 看到我的应用程序名称?

In my connection strings I add Application Name=XX so I can identify from the SQL server where a process is coming from (sp_who2 - ProgramName column). This works great when connecting from .NET. When I connect through Classic ASP using Server.CreateObject("ADODB.Connection"), my ProgramName is identified by SQL Server as "Internet Information Services".

Does anybody know of a way to configure something (connection string? IIS? sql?) so SQL Server sees my Application Name?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

落叶缤纷 2024-12-08 07:04:00

只需添加此参数:

Application Name=My app name;

这是一个示例。我不建议使用 DSN 或老式的 {SQL Server} 驱动程序,除非您确实使用 SQL 2000 或更早版本。

conn_string = "Provider=SQLNCLI10;Data Source=x.x.x.x;Initial Catalog=dbname;" & _
              "User ID=xxx;Password=xxx;Application Name=my funky chicken;"

您可能没有最新版本的 SQL Native Client,因此您可能需要回退到与版本无关的提供程序名称:

conn_string = "Provider=SQLNCLI;Data Source=x.x.x.x;Initial Catalog=dbname;" & _
              "User ID=xxx;Password=xxx;Application Name=my funky chicken;"

如果您没有安装 SQL Native Client,您可以从此处安装它 ( x86 | href="http://go.microsoft.com/fwlink/?LinkID=188401&clcid=0x409" rel="noreferrer">x64 ),或回退到 OLEDB:

conn_string = "Provider=SQLOLEDB.1;Data Source=x.x.x.x;Initial Catalog=dbname;" & _
              "User ID=xxx;Password=xxx;Application Name=my funky chicken;"

我测试了上面的所有三个连接字符串并验证 Profiler (ApplicationName)、sp_who2 (ProgramName) 和 sys.dm_exec_sessions (program_name) 显示“我的时髦鸡”。

Just add this param:

Application Name=My app name;

Here is an example. I wouldn't suggest using a DSN or the old fashioned {SQL Server} drivers unless you're really using SQL 2000 or earlier.

conn_string = "Provider=SQLNCLI10;Data Source=x.x.x.x;Initial Catalog=dbname;" & _
              "User ID=xxx;Password=xxx;Application Name=my funky chicken;"

You may not have the most recent version of SQL Native Client, so you may need to fall back to the version-independent provider name:

conn_string = "Provider=SQLNCLI;Data Source=x.x.x.x;Initial Catalog=dbname;" & _
              "User ID=xxx;Password=xxx;Application Name=my funky chicken;"

If you don't have SQL Native Client installed, you can install it from here ( x86 | x64 ), or fall back to OLEDB:

conn_string = "Provider=SQLOLEDB.1;Data Source=x.x.x.x;Initial Catalog=dbname;" & _
              "User ID=xxx;Password=xxx;Application Name=my funky chicken;"

I tested all three connection strings above and validated that Profiler (ApplicationName), sp_who2 (ProgramName) and sys.dm_exec_sessions (program_name) showed "my funky chicken."

我不吻晚风 2024-12-08 07:04:00

在 ASP Classic 中,参数名称应为“APP”。
例如:

DRIVER={SQL Server};SERVER=0.0.0.0\instancename;UID=xxx;PWD=xxx;DATABASE=xxx;App=xxx;

请参阅 SQL Server Native Client 团队的开发人员提供的详细信息:

http://blogs.msdn.com/b/sqlnativeclient/archive/2009/05/07/sql-server-native-client-connection-strings-and-ole-db.aspx

In ASP Classic parameter name should be "APP".
For example:

DRIVER={SQL Server};SERVER=0.0.0.0\instancename;UID=xxx;PWD=xxx;DATABASE=xxx;App=xxx;

See details from a developer on the SQL Server Native Client team:

http://blogs.msdn.com/b/sqlnativeclient/archive/2009/05/07/sql-server-native-client-connection-strings-and-ole-db.aspx

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文