Método Pull (String, String, String, RdaTrackOption, String)
Baixa dados de um banco de dados do SQL Server remoto e armazena-os em uma única tabela em um banco de dados do SQL Server Compact 3.5 local.
Namespace: System.Data.SqlServerCe
Assembly: System.Data.SqlServerCe (em System.Data.SqlServerCe.dll)
Sintaxe
'Declaração
Public Sub Pull ( _
localTableName As String, _
sqlSelectString As String, _
oleDBConnectionString As String, _
trackOption As RdaTrackOption, _
errorTable As String _
)
'Uso
Dim instance As SqlCeRemoteDataAccess
Dim localTableName As String
Dim sqlSelectString As String
Dim oleDBConnectionString As String
Dim trackOption As RdaTrackOption
Dim errorTable As String
instance.Pull(localTableName, sqlSelectString, _
oleDBConnectionString, trackOption, _
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
)
member Pull :
localTableName:string *
sqlSelectString:string *
oleDBConnectionString:string *
trackOption:RdaTrackOption *
errorTable:string -> unit
public function Pull(
localTableName : String,
sqlSelectString : String,
oleDBConnectionString : String,
trackOption : RdaTrackOption,
errorTable : String
)
Parâmetros
- localTableName
Tipo: System. . :: . .String
O nome da tabela do SQL Server Compact 3.5 que receberá os registros extraídos do SQL Server. Se a tabela já existir, ocorrerá um erro.
- sqlSelectString
Tipo: System. . :: . .String
Qualquer instrução Transact-SQL válida, incluindo instruções SELECT e procedimentos armazenados, que especifica qual tabela, colunas e registros devem ser extraídos do banco de dados do SQL Server para armazenamento no banco de dados do SQL Server Compact 3.5.
- oleDBConnectionString
Tipo: System. . :: . .String
- trackOption
Tipo: System.Data.SqlServerCe. . :: . .RdaTrackOption
A opção que indica se o SQL Server Compact 3.5 controla as alterações da tabela puxada e se os índices que existem na tabela que está sendo puxada são trazidos para o dispositivo com as restrições de PRIMARY KEY.
- errorTable
Tipo: System. . :: . .String
O nome da tabela de erros local que será criada se ocorrer um erro quando o método Push for chamado posteriormente para enviar as alterações de volta ao SQL Server. Esta opção poderá ser especificada somente quando o valor RdaTrackOption for TrackingOn ou TrackingOnWithIndexes.
Comentários
As propriedades InternetLogin e InternetPassword deverão ser especificadas se o diretório virtual que contém o Agente de Servidor do SQL Server Compact 3.5 estiver configurado para usar a autenticação Básica ou Integrada do Windows. sqlSelectString controla quais dados são puxados da tabela do SQL Server. Ocorre um erro quando o conjunto de registros resultante contém um tipo de dados sem suporte, como Timestamp. sqlSelectString pode especificar uma cláusula WHERE para controlar os registros a serem retornados. Por exemplo, SELECT * FROM Customers WHERE State='CA' recuperaria apenas os clientes que moram na Califórnia. sqlSelectString também dá suporte a modos de exibição ou procedimentos armazenados de retorno de linhas. As colunas selecionadas também podem ser puxadas de várias tabelas em uma única tabela ao usar a opção TrackingOff.
Se a Autenticação do SQL Server for usada, a identificação do usuário especificada em OLEDBConnectionString deverá ter a autoridade para ler a tabela do SQL Server.
Se a Autenticação do Windows for usada na configuração de INTEGRATED SECURITY="SSPI" em OLEDBConnectionString, o usuário da Internet deverá ter a autoridade para ler a tabela do SQL Server. O usuário da Internet é identificado com base no método de autenticação pelo seguinte:
Quando o diretório virtual dos Serviços de Informações da Internet da Microsoft (IIS) estiver configurado para usar o acesso anônimo, o usuário da Internet será executado com a identidade da Conta Convidado da Internet (IUSR_nomedocomputador). Se você configurar uma outra conta de usuário do Windows como Conta Convidado da Internet, o usuário da Internet será executado com a identidade dessa conta.
Quando o diretório virtual dos IIS estiver configurado para usar a autenticação Básica, o usuário da Internet será executado com a identidade da conta de usuário do Windows cujo nome de usuário da Internet e senha o cliente forneceu.
Quando o diretório virtual dos IIS estiver configurado para usar a autenticação Integrada do Windows, o usuário da Internet será executado com a identidade da conta de usuário do Windows cujo nome de usuário da Internet e senha o cliente forneceu.
Para obter mais informações sobre o acesso a dados e suas limitações, consulte "Tipos de dados e mapeamentos de tipos de dados com suporte" e "Limitações do RDA" nos Manuais Online do SQL Server Compact 3.5.
Exemplos
' 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();
}