本文介绍如何以编程方式指定连接字符串中的客户端网络库,当您连接到 SQL Server 数据库时。
在 Microsoft 数据访问组件 (MDAC) 2.6 及更高版本,您可以通过在连接字符串中使用
server name 参数指定客户端访问库。 因此,您可以指定一个特定的客户端访问库,当系统提示您要连接到应用程序的服务器名称。测试并为 SQL Server 连接问题进行故障排除时,此行为可能非常有用。
例如对于您可以使用
Osql 命令行实用程序,以便连接到 SQL Server 并强制它以使用 TCP/IP 网络库:
osql -Stcp:myServer,portNumber -E
代码示例
下面的 Microsoft Visual C#.net 代码示例演示如何设置连接字符串。连接字符串具有相同的格式,不管您使用的语言:
using System;
using System.Data;
using System.Data.SqlClient;
namespace getCurrentProtocol
{
/// <summary>
/// Main Application Driver Class
/// </summary>
class Driver
{
static void Main(string[] args)
{
string sCxn = "server=myServer;Integrated Security=SSPI; database=master";
//string sCxn = "server=np:myServer;Integrated Security=SSPI; database=master";
//string sCxn = "server=tcp:myServer;Integrated Security=SSPI; database=master";
//string sCxn = "server=rpc:myServer;Integrated Security=SSPI; database=master";
//string sCxn = "server=lpc:myServer;Integrated Security=SSPI; database=master";
string sCmd = "SELECT net_library from sysprocesses where spid=@@spid";
SqlConnection cxn = new SqlConnection(sCxn);
SqlCommand sqlCmd = new SqlCommand(sCmd, cxn);
SqlDataAdapter sqlDa = new SqlDataAdapter(sCmd, cxn);
DataTable dt = new DataTable();
try
{
sqlDa.Fill(dt);
Console.WriteLine("Hit ENTER to continue ...");
Console.ReadLine();
foreach (DataRow dr in dt.Rows)
Console.WriteLine(dr["net_library"]);
}
catch (SqlException e)
{
Console.WriteLine(e.StackTrace);
Console.WriteLine("SQL Error Number: " + e.Number);
Console.WriteLine("SQL Error Message: " + e.Message);
}
}
}
}
注意在连接字符串和特别的
服务器 参数值:
string sCxn = "server=myServer;Integrated Security=SSPI; database=northwind"
使用各种网络库的代码示例
下面的代码示例演示了如何使用
服务器 参数的值指定各种网络库:
有关详细的信息,请访问下面的 Microsoft 网站:
http://msdn.microsoft.com/en-us/library/aa470051.aspx
(http://msdn.microsoft.com/en-us/library/aa470051.aspx)
文章编号: 313295 - 最后修改: 2005年11月30日 - 修订: 6.5
这篇文章中的信息适用于:
- Microsoft SQL Server 2000 标准版
- Microsoft SQL Server 2000 64-bit Edition
- Microsoft Data Access Components 2.6
- Microsoft Data Access Components 2.6 Service Pack 1
- Microsoft Data Access Components 2.6 Service Pack 2
- Microsoft Data Access Components 2.7
- Microsoft SQL Server 2005 Standard Edition
- Microsoft SQL Server 2005 Express Edition
- Microsoft SQL Server 2005 Developer Edition
- Microsoft SQL 2005 Server Enterprise
- Microsoft SQL 2005 Server Workgroup
| kbmt kbhowtomaster KB313295 KbMtzh |
机器翻译注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版:
313295
(http://support.microsoft.com/kb/313295/en-us/
)
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。