[ Team LiB ] |
Recipe 1.6 Using an IP Address to Connect to SQL ServerProblemYou want to connect to a SQL Server using its IP address instead of its server name. SolutionUse the Network Address and Network Library attributes of the connection string. The sample code contains a single event handler:
The C# code is shown in Example 1-5. Example 1-5. File: ConnectSqlServerIpAddressForm.cs// Namespaces, variables, and constants using System; using System.Data.SqlClient; // . . . private void connectButton_Click(object sender, System.EventArgs e) { String connString = "Network Library=dbmssocn;Network Address=127.0.0.1 ;" + "Integrated security=SSPI;Initial Catalog=Northwind"; SqlConnection conn = new SqlConnection(connString); conn.Open( ); // Return some information about the server. resultTextBox.Text = "ConnectionState = " + conn.State + Environment.NewLine + "DataSource = " + conn.DataSource + Environment.NewLine + "ServerVersion = " + conn.ServerVersion + Environment.NewLine; conn.Close( ); resultTextBox.Text += "ConnectionState = " + conn.State; } DiscussionSQL Server network libraries are dynamic-link libraries (DLLs) that perform network operations required for client computers and SQL Server computers to communicate. A server can monitor multiple libraries simultaneously; the only requirement is that each network library to be monitored is installed and configured. Available network libraries for SQL Server 2000 include:
Clustered installations of SQL Server support only Named Pipes and TCP/IP protocols. AppleTalk, Banyan Vines, and Multiprotocol protocols are unavailable if named instances are installed on the server. For more information about network libraries and configuring network libraries, see Microsoft SQL Server Books Online. The use of the SQL Server TCP/IP Sockets improves performance and scalability with high volumes of data. It avoids some security issues associated with named pipes. As with any protocol, the client and the server must be configured to use TCP/IP. To connect to SQL Server using an IP address, the TCP/IP network library must be used to connect to the SQL Server. This is done by specifying the library in the connection string as either the attribute Net or Network Library with a value of dbmssocn. Specify the IP address using the Data Source, Server, Address, Addr, or Network Address parameter. The following connection string demonstrates using an IP address to specify the data source: Network Library=dbmssocn;Network Address=127.0.0.1; Integrated security=SSPI;Initial Catalog=Northwind In the example, the IP address is the local machine. This could also be specified as (local). To specify a SQL Server other than a local instance, specify the IP address of the computer on which SQL Server is installed. Default instances of SQL Server listen on port 1433. Named instances of SQL Server dynamically assign a port number when they are first started. The example above does not specify the port number and therefore uses the default port 1433 of the SQL Server. If the SQL Server is configured to listen on another port, specify the port number following the IP address specified by the Network Address attribute separated by a comma as shown in the following snippet, which connects to a local SQL Server listening on port 1450: Network Address=(local),1450 |
[ Team LiB ] |