Export (0) Print
Expand All

SqlConnection.ChangeDatabase Method

Changes the current database for an open SqlConnection.

Namespace: System.Data.SqlClient
Assembly: System.Data (in system.data.dll)

public override void ChangeDatabase (
	string database
)
public void ChangeDatabase (
	String database
)
public override function ChangeDatabase (
	database : String
)

Parameters

database

The name of the database to use instead of the current database.

Exception typeCondition

ArgumentException

The database name is not valid.

InvalidOperationException

The connection is not open.

SqlException

Cannot change the database.

The value supplied in the database parameter must be a valid database name. The database parameter cannot contain a null value, an empty string, or a string with only blank characters.

When you are using connection pooling against SQL Server 2000, and you close the connection, it is returned to the connection pool. The next time the connection is retrieved from the pool used, the reset connection request piggybacks on the first round trip to the server and executes before the user performs any operations. From the time that you return a connection to the connection pool after calling the ChangeDatabase method, until the time the connection is retrieved, the connection remains active on the database. This prevents you from dropping the database because the connection is still active.

The connection pooler is not influenced by ChangeDatabase as long you do not set Connection Reset to false. As the connection comes out of the pool the connection is reset with the server moving back to the login time database. There are no new connections created or reauthentications. If you set Connection Reset to false, connections in the pool to different databases might result.

The following example creates a SqlConnection and displays some of its read-only properties.

private static void ChangeSqlDatabase(string connectionString)
{
    // Assumes connectionString represents a valid connection string
    // to the AdventureWorks sample database.
    using (SqlConnection connection = new SqlConnection(connectionString))
    {
        connection.Open();
        Console.WriteLine("ServerVersion: {0", connection.ServerVersion);
        Console.WriteLine("Database: {0", connection.Database);

        connection.ChangeDatabase("Northwind");
        Console.WriteLine("Database: {0", connection.Database);
    


Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft