Compartir a través de


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

Descarga los datos de una base de datos remota de SQL Server y los almacena en una tabla única de una base de datos local de SQL Server Compact 3.5.

Espacio de nombres: System.Data.SqlServerCe
Ensamblado: System.Data.SqlServerCe (en system.data.sqlserverce.dll)

Sintaxis

'Declaración
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
)

Parámetros

  • localTableName
    Nombre de la tabla SQL Server Compact 3.5 que recibirá los registros SQL Server extraídos. Si la tabla ya existe se produce un error.
  • sqlSelectString
    Cualquier instrucción Transact-SQL válida, incluidas las instrucciones SELECT y los procedimientos almacenados, que especifica la tabla, las columnas y los registros que se van a extraer de la base de datos SQL Server para almacenar en la base de datos SQL Server Compact 3.5.
  • oleDBConnectionString
  • trackOption
    Opción que indica si SQL Server Compact 3.5 realiza un seguimiento de los cambios efectuados en la tabla extraída y si los índices de la tabla se pasan al dispositivo con las restricciones PRIMARY KEY.
  • errorTable
    Nombre de la tabla de errores local que se crea si se produce un error en la llamada posterior al método Push para volver a enviar los cambios a SQL Server. Sólo se puede especificar esta opción si el valor de RdaTrackOption es TrackingOn o TrackingOnWithIndexes.

Notas

Es necesario especificar las propiedades InternetLogin y InternetPassword si el directorio virtual en el que está contenido el agente del servidor SQL Server Compact 3.5 se ha configurado de modo que utilice la autenticación básica o integrada de Windows. sqlSelectString controla qué datos se extraen de la tabla SQL Server. Se producirá un error si el conjunto de registros resultante contiene un tipo de datos no admitido, como Timestamp. sqlSelectString puede especificar una cláusula WHERE para controlar qué registros se devuelven. Por ejemplo, SELECT * FROM Customers WHERE State='CA' sólo recuperaría los clientes que viven en California. sqlSelectString admite también vistas y procedimientos almacenados que devuelven filas. Si se utiliza la opción TrackingOff, puede también extraer columnas seleccionadas de varias tablas y puede insertarlas en una única tabla.

Si se utiliza la autenticación de SQL Server, el identificador de usuario especificado en OLEDBConnectionString debe estar autorizado para leer la tabla SQL Server.

Si se utiliza la autenticación de Windows mediante el establecimiento de INTEGRATED SECURITY="SSPI" en OLEDBConnectionString, el usuario de Internet debe estar autorizado para leer la tabla SQL Server. A continuación, se identifica el usuario de Internet en función del método de autenticación:

  • Si el directorio virtual de Microsoft Internet Information Services (IIS) está configurado para el uso de un acceso anónimo, el usuario de Internet utiliza la identidad de la cuenta de invitado para Internet (IUSR_nombreDeEquipo). Si configura otra cuenta de usuario de Windows como cuenta de invitado para Internet, el usuario de Internet utiliza la identidad de dicha cuenta.

  • Si el directorio virtual de IIS se configura de modo que utilice la autenticación básica, el usuario de Internet utiliza la identidad de la cuenta de usuario de Windows para la que el cliente ha suministrado un nombre de usuario y una contraseña de Internet.

  • Si el directorio virtual de IIS se configura de modo que utilice la autenticación integrada de Windows, el usuario de Internet utiliza la identidad de la cuenta de usuario de Windows para la que el cliente ha suministrado un nombre de usuario y una contraseña de Internet.

Para obtener más información sobre el acceso a datos y sus limitaciones, vea "Supported Data Types and Data Type Mappings" (Tipos de datos admitidos y asignaciones de tipos de datos) y "RDA Limitations" (Limitaciones del acceso remoto a datos, RDA) en los libros en pantalla de SQL Server Compact 3.5.

Ejemplo

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

Seguridad para subprocesos

Todos los miembros (Compartidos en Microsoft Visual Basic) de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancia sean seguros para subprocesos.

Plataformas

Plataformas de desarrollo

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
Información de la versión
.NET Framework y NET Compact Framework
Se admite en 3.5
.NET Framework
Se admite en 3.0
.NET Compact Framework y .Net Framework
Se admite en 2.0

Vea también

Referencia

SqlCeRemoteDataAccess Class
SqlCeRemoteDataAccess Members
System.Data.SqlServerCe Namespace