Share via


SqlCeRemoteDataAccess クラス

SqlCeRemoteDataAccess オブジェクトの新しいインスタンスを初期化します。リモート データ アクセスの詳細については、「リモート データ アクセス (RDA) の使用」を参照してください。

名前空間:  System.Data.SqlServerCe
アセンブリ:  System.Data.SqlServerCe (System.Data.SqlServerCe.dll)

構文

'宣言
Public NotInheritable Class SqlCeRemoteDataAccess _
    Implements IDisposable
'使用
Dim instance As SqlCeRemoteDataAccess
public sealed class SqlCeRemoteDataAccess : IDisposable
public ref class SqlCeRemoteDataAccess sealed : IDisposable
[<SealedAttribute>]
type SqlCeRemoteDataAccess =  
    class
        interface IDisposable
    end
public final class SqlCeRemoteDataAccess implements IDisposable

説明

現在の SQL Server Compact 3.5 は、Web サイトに使用するデータベースとして最適化されていません。既定では、ASP.NET 接続アプリケーションからの接続は、SQL Server Compact 3.5 内でブロックされます。SQL Server Compact 3.5 は、アプリケーション内で組み込み型データベースとして使用するために最適化されています。SQL Server Compact 3.5 を Web サイト用のデータベースとして使用するには、複数ユーザーやデータの同時更新をサポートする必要があります。これにより、パフォーマンスに問題が発生する可能性があります。このため、これらの利用方法はサポートされていません。SQL Server 2005 Express Edition 以降のバージョンなど、他のエディションの SQL Server は、Web サイトに使用するデータベースとして最適化されています。

同期する場合のために ASP.NET を使用して SQL Server Compact 3.5 データベースを作成するアプリケーションでは、SQL Server Compact 3.5 を ASP.NET で使用できます。ASP.NET で動作するように SQL Server Compact 3.5 の既定の動作を変更するには、次のコードを使用してください。

AppDomain.CurrentDomain.SetData("SQLServerCompactEditionUnderWebHosting", true)

使用例

SqlCeRemoteDataAccess オブジェクトの新しいインスタンスを初期化する方法を次の例に示します。

' Connection String to the SQL Server
'
Dim rdaOleDbConnectString As String = "Data Source=MySqlServer;Initial Catalog=AdventureWorks; " & _
    "User Id=username;Password = <password>"

' Initialize RDA Object
'
Dim rda As SqlCeRemoteDataAccess = Nothing

Try
    ' Try the Pull Operation
    '
    rda = New SqlCeRemoteDataAccess( _
        "https://www.adventure-works.com/sqlmobile/sqlcesa35.dll", _
        "MyLogin", _
        "<password>", _
        "Data Source=MyDatabase.sdf")

    rda.Pull("Employees", "SELECT * FROM DimEmployee", rdaOleDbConnectString, _
        RdaTrackOption.TrackingOnWithIndexes, "ErrorTable")

    ' or, try one of these overloads:
    ' rda.Pull("Employees", "SELECT * FROM DimEmployee", rdaOleDbConnectString, _
    '     RdaTrackOption.TrackingOnWithIndexes)
    '
    ' rda.Pull("Employees", "SELECT * FROM DimEmployee", rdaOleDbConnectString)

Catch
    ' Handle errors here
    '
Finally
    ' Dispose of the RDA object
    '
    rda.Dispose()
End Try
// Connection String to the SQL Server
//
string rdaOleDbConnectString = "Data Source=MySqlServer;Initial Catalog=AdventureWorks; " +
    "User Id=username;Password = <password>";

// Initialize RDA Object
//
SqlCeRemoteDataAccess rda = null;

try
{
    // Try the Pull Operation
    //
    rda = new SqlCeRemoteDataAccess(
        "https://www.adventure-works.com/sqlmobile/sqlcesa35.dll",
        "MyLogin",
        "<password>",
        "Data Source=MyDatabase.sdf");

    rda.Pull("Employees", "SELECT * FROM DimEmployee", rdaOleDbConnectString,
        RdaTrackOption.TrackingOnWithIndexes, "ErrorTable");

    // or, try one of these overloads:
    //
    // rda.Pull("Employees", "SELECT * FROM DimEmployee", rdaOleDbConnectString,
    //     RdaTrackOption.TrackingOnWithIndexes);
    //
    // rda.Pull("Employees", "SELECT * FROM DimEmployee", rdaOleDbConnectString);
}
catch (SqlCeException)
{
    // Handle errors here
    //
}
finally
{
    // Dispose of the RDA object
    //
    rda.Dispose();
}

継承階層

System. . :: . .Object
  System.Data.SqlServerCe..::..SqlCeRemoteDataAccess

スレッド セーフ

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

関連項目

参照

SqlCeRemoteDataAccess メンバー

System.Data.SqlServerCe 名前空間