Freigeben über


Vorgehensweise: Ausführen von Pulls für Daten (programmgesteuert)

In diesem Thema erfahren Sie, wie Sie Daten aus einer Microsoft SQL Server-Datenbank über einen Pull-Vorgang an eine Datenbank von Microsoft SQL Server 2005 Compact Edition (SQL Server Compact Edition) weitergeben, indem Sie die SqlCeRemoteDataAccess-Klasse verwenden. Weitere Informationen zum Verwenden des SqlServerCe-Namespaces finden Sie in der Referenzdokumentation zum SqlServerCe-Namespace.

So führen Sie mithilfe von Remotedatenzugriff Pulls für Daten aus

  1. Initialisieren Sie ein SqlCeRemoteDataAccess-Objekt, und legen Sie die Eigenschaften für die Verbindung fest.

    SqlCeRemoteDataAccess rda = new SqlCeRemoteDataAccess("https://www.adventure-works.com/sqlmobile/sqlcesa30.dll", "MyLogin", "<password>", "Data Source=MyDatabase.sdf");
    
  2. Rufen Sie die Pull-Methode auf, wobei Sie den Namen der SQL Server-Tabelle, von der die Daten mithilfe eines Pull-Vorgangs abgerufen werden sollen, die zu verwendende SELECT-Anweisung sowie die Verbindungszeichenfolge zu der lokalen SQL Server Compact Edition-Datenbank angeben. Sie können zudem die zu verwendende Nachverfolgungsoption und den Speicherort der Fehlertabelle angeben, um Fehler beim Remotedatenzugriff (Remote Data Access – RDA) aufzuzeichnen.

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

Beispiel

Im folgenden Beispiel wird gezeigt, wie ein Pull für die Daten der DimEmployee-Tabelle in einer SQL Server-Datenbank ausgeführt und die Employees-Tabelle von SQL Server Compact Edition aufgefüllt wird.

string rdaOleDbConnectString = @"Provider=SQLOLEDB; 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/sqlcesa30.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();
        }
Dim rdaOleDbConnectString As String = _
 "Provider=SQLOLEDB; "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/sqlcesa30.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

Siehe auch

Konzepte

Einführung zum Remotedatenzugriff
Daten mithilfe von Pull vom Server zum Client senden

Hilfe und Information

Informationsquellen für SQL Server Compact Edition