Partager via


SqlCeRemoteDataAccess.Pull Method (String, String, String, RdaTrackOption, String)

Télécharge les données d'une base de données SQL Server distante et stocke ces données dans une seule table d'une base de données SQL Server Compact 3.5 locale.

Espace de noms: System.Data.SqlServerCe
Assembly: System.Data.SqlServerCe (dans system.data.sqlserverce.dll)

Syntaxe

'Déclaration
Public Sub Pull ( _
    localTableName As String, _
    sqlSelectString As String, _
    oleDBConnectionString As String, _
    trackOption As RdaTrackOption, _
    errorTable As String _
)
public void Pull (
    string localTableName,
    string sqlSelectString,
    string oleDBConnectionString,
    RdaTrackOption trackOption,
    string errorTable
)
public:
void Pull (
    String^ localTableName, 
    String^ sqlSelectString, 
    String^ oleDBConnectionString, 
    RdaTrackOption trackOption, 
    String^ errorTable
)
public void Pull (
    String localTableName, 
    String sqlSelectString, 
    String oleDBConnectionString, 
    RdaTrackOption trackOption, 
    String errorTable
)
public function Pull (
    localTableName : String, 
    sqlSelectString : String, 
    oleDBConnectionString : String, 
    trackOption : RdaTrackOption, 
    errorTable : String
)

Paramètres

  • localTableName
    Nom de la table SQL Server Compact 3.5 qui recevra les enregistrements SQL Server extraits. Une erreur se produit si la table existe déjà.
  • sqlSelectString
    Toute instruction Transact-SQL valide, notamment les instructions SELECT et les procédures stockées, qui spécifie la table, les colonnes et les enregistrements à extraire de la base de données SQL Server en vue de leur stockage dans la base de données SQL Server Compact 3.5.
  • oleDBConnectionString
  • trackOption
    Option indiquant si SQL Server Compact 3.5 assure le suivi des modifications apportées à la table extraite et si les index qui existent sur la table en cours d'extraction sont transmis au périphérique avec les contraintes PRIMARY KEY.
  • errorTable
    Nom de la table des erreurs locale qui est créée si une erreur se produit lorsque la méthode Push est appelée ultérieurement pour renvoyer des modifications à SQL Server. Cette option peut être spécifiée uniquement lorsque la valeur RdaTrackOption est TrackingOn ou TrackingOnWithIndexes.

Remarques

Les propriétés InternetLogin et InternetPassword doivent être spécifiées si le répertoire virtuel qui contient l'Agent serveur SQL Server Compact 3.5 est configuré de manière à utiliser l'authentification de base ou l'authentification Windows intégrée. sqlSelectString détermine les données qui sont extraites de la table SQL Server. Une erreur se produit si le jeu d'enregistrements obtenu contient un type de données non pris en charge, par exemple Timestamp. sqlSelectString peut spécifier une clause WHERE pour déterminer les enregistrements qui sont retournés. Par exemple, SELECT * FROM Customers WHERE State='CA' peut récupérer uniquement les clients qui habitent en Californie. sqlSelectString prend en charge des procédures stockées qui retournent des lignes ou des vues. Il peut aussi extraire des colonnes sélectionnées à partir de plusieurs tables vers une table unique en utilisant l'option TrackingOff.

Si l'authentification SQL Server est utilisée, l'ID d'utilisateur spécifié dans OLEDBConnectionString doit disposer de l'autorisation requise pour lire la table SQL Server.

Si l'authentification Windows est utilisée en définissant INTEGRATED SECURITY="SSPI" dans OLEDBConnectionString, l'utilisateur Internet doit avoir l'autorisation requise pour lire la table SQL Server. Ce qui suit identifie l'utilisateur Internet en fonction de la méthode d'authentification :

  • Lorsque le répertoire virtuel des services IIS ( Microsoft Internet Information Services) est configuré de manière à utiliser l'accès anonyme, l'utilisateur Internet utilise l'identité du Compte Invité Internet (IUSR_NomOrdinateur). Si vous configurez un autre compte d'utilisateur Windows en tant que Compte Invité Internet, l'utilisateur Internet utilise l'identité de ce compte.

  • Lorsque le répertoire virtuel IIS est configuré de manière à employer l'authentification de base, l'utilisateur Internet utilise l'identité du compte d'utilisateur Windows pour lequel le client a fourni le nom d'utilisateur Internet et le mot de passe correspondant.

  • Lorsque le répertoire virtuel IIS est configuré de manière à employer l'authentification intégrée de Windows, l'utilisateur Internet utilise l'identité du compte d'utilisateur Windows pour lequel le client a fourni le nom d'utilisateur Internet et le mot de passe correspondant.

Pour plus d'informations sur l'accès aux données et les restrictions rencontrées, consultez « Supported Data Types and Data Type Mappings » et « RDA Limitations » dans la documentation en ligne de SQL Server Compact 3.5.

Exemple

' 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();
}

Sécurité des threads

Tout membre statique public (Partagé dans Microsoft Visual Basic) de ce type sont thread-safe. Tous les membres de l'instance ne sont pas garantis comme sûrs.

Plateformes

Plateformes de développement

Windows Vista, Windows Mobile 5.0, Windows XP Professional with Service Pack 2 (SP2), Windows Server 2003, Windows Mobile 2003 for Pocket PC, Windows CE 5.0
Informations sur la version
.NET Framework et NET Compact Framework
Pris en charge dans 3.5
.NET Framework
Pris en charge dans 3.0
.NET Compact Framework et .Net Framework
Pris en charge dans 2.0

Voir aussi

Référence

SqlCeRemoteDataAccess Class
SqlCeRemoteDataAccess Members
System.Data.SqlServerCe Namespace