次の方法で共有


SqlCeRemoteDataAccess.Pull メソッド (String, String, String, RdaTrackOption)

メモ : この名前空間、クラス、およびメンバは、.NET Framework Version 1.1 だけでサポートされています。

SQL Server データベースからデータを取り出し、SQL Server CE データベースのテーブルに格納します。インデックス情報を含めるかどうか、また、プルされたテーブルに対する変更を追跡するかどうかを指定します。

Overloads Public Sub Pull( _
   ByVal localTableName As String, _   ByVal sqlSelectString As String, _   ByVal oledbConnectionString As String, _   ByVal trackOption As RdaTrackOption _)
[C#]
public void Pull(stringlocalTableName,stringsqlSelectString,stringoledbConnectionString,RdaTrackOptiontrackOption);
[C++]
public: void Pull(String* localTableName,String* sqlSelectString,String* oledbConnectionString,RdaTrackOptiontrackOption);
[JScript]
public function Pull(
   localTableName : String,sqlSelectString : String,oledbConnectionString : String,trackOption : RdaTrackOption);

パラメータ

  • localTableName
    取得された SQL Server のレコードを受け取る SQL Server CE のテーブルの名前。テーブルが既に存在する場合は、エラーが発生します。
  • sqlSelectString
    SQL Server データベースから取り出して SQL Server CE データベースに格納するテーブル、列、レコードを指定する任意の有効な Transact-SQL ステートメント。これには SELECT ステートメントやストアド プロシージャが含まれます。
  • oledbConnectionString
    SQL Server CE データベースに接続するときに使用する OLE DB 接続文字列。
  • trackOption
    プルされたテーブルに対する変更を SQL Server CE が追跡するかどうか、また、プルされたテーブルに存在するインデックスを PRIMARY KEY 制約と共にデバイスに格納するかどうかを示すオプション。

解説

SQL Server CE サーバー エージェントを含む仮想ディレクトリが基本認証または統合 Windows 認証を使用するように構成されている場合は、 InternetLogin プロパティと InternetPassword プロパティを指定する必要があります。SQL Server のテーブルからプルするデータは、 sqlSelectString によって制御します。結果のレコードセットが timestamp など、サポートされていないデータ型を含んでいる場合、エラーが発生します。 sqlSelectString では、WHERE 句を指定してどのレコードを取得するかを制御できます。たとえば、 SELECT * FROM Customers WHERE State='CA' は、カリフォルニア州在住の顧客だけを返します。 sqlSelectString は、行を返すストアド プロシージャまたはビューもサポートしています。 TrackingOff オプションを使用している場合は、複数のテーブルから選択した列を 1 つのテーブルにプルすることもできます。

SQL Server 認証を使用する場合、OLEDBConnectionString に指定したユーザー ID は、SQL Server のテーブルの読み取り権限を持っている必要があります。

OLEDBConnectionString で INTEGRATED SECURITY="SSPI" を設定して Windows 認証を使用する場合、インターネット ユーザーは SQL Server のテーブルの読み取り権限を持っている必要があります。インターネット ユーザーは、次のように認証方法に基づいて識別されます。

  • Microsoft Internet Information Services (IIS) の仮想ディレクトリが匿名アクセスを使用するように構成されている場合、インターネット ユーザーは、インターネット ゲスト アカウント (IUSR_computername) の ID で実行されます。別の Windows ユーザー アカウントをインターネット ゲスト アカウントとして構成した場合、インターネット ユーザーはそのアカウントの ID として実行されます。
  • IIS の仮想ディレクトリが基本認証を使用するように構成されている場合、インターネット ユーザーは、クライアントから指定されたインターネット ユーザーの名前とパスワードに対応する Windows ユーザー アカウントの ID で実行されます。
  • IIS の仮想ディレクトリが統合 Windows 認証を使用するように構成されている場合、インターネット ユーザーは、クライアントから指定されたインターネット ユーザーの名前とパスワードに対応する Windows ユーザー アカウントの ID で実行されます。

データ アクセスおよび制約事項の詳細については、SQL Server CE Books Online の「Supported Data Types and Data Type Mappings」および「RDA Limitations」を参照してください。

使用例

 
' Connection String to the SQL Server.
Dim rdaOleDbConnectString As String = _
    "Provider=sqloledb; Data Source=MySqlServer;Initial Catalog=Northwind; " + _
    "User Id=username;Password = <password>"

' Initialize RDA Object.
Dim rda As SqlCeRemoteDataAccess = Nothing

Try
    'Try the Pull Operation.
    rda = New SqlCeRemoteDataAccess()
   
    rda.InternetLogin         = "MyLogin"
    rda.InternetPassword      = "<password>"
    rda.InternetUrl           = "<http://www.northwindtraders.com/sqlce/sscesa20.dll>"
    rda.LocalConnectionString = "Provider=Microsoft.SQLSERVER.OLEDB.CE.2.0;Data Source=\ssce.sdf"
   
    rda.Pull("Employees", "Select * from Employees", _
       rdaOleDbConnectString, _
       RdaTrackOption.TrackingOnWithIndexes, _
       "ErrorTable")

Catch e As SqlCeException
'Use you own Error Handling Routine.
'ShowErrors(e);
Finally
   'Dispose of the RDA Object.
   rda.Dispose()
End Try

[C#] 

        // Connection String to the SQL Server.
        string rdaOleDbConnectString  = "Provider=sqloledb; Data Source=MySqlServer;Initial Catalog=Northwind; " +
                                        "User Id=username;Password = <password>"; 
                                      
        // Initialize RDA Object.
        SqlCeRemoteDataAccess rda = null;

        try {
            //Try the Pull Operation.
            rda = new SqlCeRemoteDataAccess();
            
            rda.InternetLogin          = "MyLogin";
            rda.InternetPassword       = "<password>";
            rda.InternetUrl            = "<http://www.northwindtraders.com/sqlce/sscesa20.dll>";
            rda.LocalConnectionString  = @"Provider=Microsoft.SQLSERVER.OLEDB.CE.2.0;Data Source=\ssce.sdf";
           
            rda.Pull(
                "Employees", 
                "Select * from Employees", 
                rdaOleDbConnectString, 
                RdaTrackOption.TrackingOnWithIndexes , 
                "ErrorTable");
        }
        catch(SqlCeException) {
            //Use you own Error Handling Routine.
        }
        finally {
            //Dispose of the RDA Object.
            rda.Dispose();
        }

[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: .NET Compact Framework - Windows CE .NET

.NET Framework セキュリティ:

参照

SqlCeRemoteDataAccess クラス | SqlCeRemoteDataAccess メンバ | System.Data.SqlServerCe 名前空間 | SqlCeRemoteDataAccess.Pull オーバーロードの一覧