Share via


SqlCeConnection.ChangeDatabase Method

Changes the current database for an open SqlCeConnection.

Namespace:  System.Data.SqlServerCe
Assembly:  System.Data.SqlServerCe (in System.Data.SqlServerCe.dll)

Syntax

'Declaration
Public Overrides Sub ChangeDatabase ( _
    value As String _
)
'Usage
Dim instance As SqlCeConnection
Dim value As String

instance.ChangeDatabase(value)
public override void ChangeDatabase(
    string value
)
public:
virtual void ChangeDatabase(
    String^ value
) override
abstract ChangeDatabase : 
        value:string -> unit 
override ChangeDatabase : 
        value:string -> unit 
public override function ChangeDatabase(
    value : String
)

Parameters

Implements

IDbConnection.ChangeDatabase(String)

Exceptions

Exception Condition
ArgumentException

The database name is not valid.

InvalidOperationException

The connection is not open.

SqlCeException

The databases cannot be changed.

Remarks

The name supplied in the value parameter must be a valid database name. The name must be the full path to the database; for example, "\my app\myDB.sdf". The value parameter cannot be nulla null reference (Nothing in Visual Basic), be empty, or contain a string with only blank characters.

ChangeDatabase applies to the new database the same properties used to open the current database, except for the password, which will be set to an empty string.

If the new database requires a password, this call will fail. If this occurs, to change databases, you must close the original connection, specify a new connection string, and then reopen the connection.

Examples

The following example shows how to switch databases while preserving the original connection options.

Dim conn As New SqlCeConnection()

' Set some connection string properties e.g.:
' 
conn.ConnectionString = _
    "Persist Security Info = False; Data Source = 'SalesData.sdf';" & _
    "Password = '<password>'; File Mode = 'shared read'; " & _
    "Max Database Size = 256; Max Buffer Size = 1024"

conn.Open()

' You can change the database while preserving 
' the orignal connection options
'
conn.ChangeDatabase("SupportData.sdf")
SqlCeConnection conn = new SqlCeConnection();

// Set some connection string properties e.g.:
// 
conn.ConnectionString = 
    "Persist Security Info = False; Data Source = 'SalesData.sdf';" +
    "Password = '<password>'; File Mode = 'shared read'; " +
    "Max Database Size = 256; Max Buffer Size = 1024";

conn.Open();

// You can change the database while preserving 
// the orignal connection options
//
conn.ChangeDatabase("SupportData.sdf");

See Also

Reference

SqlCeConnection Class

System.Data.SqlServerCe Namespace