SqlCeRemoteDataAccess.Push Method (String, String)

Передает изменения отслеживаемой запрашиваемой таблицы в SQL Server Compact 3.5 обратно в исходную таблицу SQL Server. Каждое изменение применяется на сервере в отдельной транзакции. Передает изменения отслеживаемой запрашиваемой таблицы в SQL Server Compact 3.5 обратно в исходную таблицу SQL Server. Каждое изменение применяется на сервере в отдельной транзакции.

Пространство имен: System.Data.SqlServerCe
Сборка: System.Data.SqlServerCe (в system.data.sqlserverce.dll)

Синтаксис

'Декларация
Public Sub Push ( _
    localTableName As String, _
    oleDBConnectionString As String _
)
public void Push (
    string localTableName,
    string oleDBConnectionString
)
public:
void Push (
    String^ localTableName, 
    String^ oleDBConnectionString
)
public void Push (
    String localTableName, 
    String oleDBConnectionString
)
public function Push (
    localTableName : String, 
    oleDBConnectionString : String
)

Параметры

  • localTableName
    Имя таблицы SQL Server Compact 3.5, в которую будут записаны извлеченные записи SQL Server. Если таблица уже существует, возникнет ошибка.
  • oleDBConnectionString

Замечания

Чтобы передать изменения отслеживаемой запрашиваемой таблицы SQL Server Compact 3.5 обратно в таблицу SQL Server, приложение должно вызывать метод Push. Приложение должно создать локальную таблицу SQL Server Compact 3.5, вызвав метод Pull с RdaTrackOption, установленным в TrackingOn или TrackingOnWithIndexes.

Свойство oledbConnectionString содержит описание всех сведений, необходимых для установления соединения с SQL Server.

При использовании проверки подлинности SQL Server пользовательский идентификатор, указанный в OLEDBConnectionString, должен иметь права на чтение таблицы SQL Server.

Если в свойстве OLEDBConnectionString указан параметр «INTEGRATED SECURITY="SSPI"», выбирающий использование проверки подлинности Windows, то пользователь Интернета должен иметь права на чтение таблицы SQL Server. Идентификация пользователя Интернета в зависимости от способа проверки подлинности производится следующим образом.

  • Если виртуальный каталог служб Microsoft IIS настроен для анонимного доступа, то пользователю Интернета выделяется идентификатор учетной записи гостя из сети Интернет (IUSR_имя_компьютера). Если в качестве учетной записи гостя из сети Интернет настроена другая учетная запись Windows, то пользователь Интернета получит идентификатор этой учетной записи.

  • Если виртуальный каталог IIS настроен для использования обычной проверки подлинности, то пользователь Интернета получает идентификатор учетной записи Windows, для которой клиент указал имя пользователя и пароль в Интернете.

  • Если виртуальный каталог IIS настроен для использования встроенной проверки подлинности Windows, то пользователь Интернета получит идентификатор учетной записи Windows, для которой клиент указал имя пользователя Интернета и пароль.

Если при вызове метода Pull был указан errorTableName, то любые обнаруженные во время Push ошибки будут записаны в таблицу ошибок. Дополнительные сведения о работе таблицы ошибок см. в разделе «Обнаружение и разрешение конфликтов удаленного доступа к данным» в электронной документации по SQL Server Compact 3.5.

Замечания

Чтобы передать изменения отслеживаемой запрашиваемой таблицы SQL Server Compact 3.5 обратно в таблицу SQL Server, приложение должно вызывать метод Push. Приложение должно создать локальную таблицу SQL Server Compact 3.5, вызвав метод Pull с RdaTrackOption, установленным в TrackingOn или TrackingOnWithIndexes.

Свойство oledbConnectionString содержит описание всех сведений, необходимых для установления соединения с SQL Server.

При использовании проверки подлинности SQL Server пользовательский идентификатор, указанный в OLEDBConnectionString, должен иметь права на чтение таблицы SQL Server.

Если в свойстве OLEDBConnectionString указан параметр «INTEGRATED SECURITY="SSPI"», выбирающий использование проверки подлинности Windows, то пользователь Интернета должен иметь права на чтение таблицы SQL Server. Идентификация пользователя Интернета в зависимости от способа проверки подлинности производится следующим образом.

  • Если виртуальный каталог служб Microsoft IIS настроен для анонимного доступа, то пользователю Интернета выделяется идентификатор учетной записи гостя из сети Интернет (IUSR_имя_компьютера). Если в качестве учетной записи гостя из сети Интернет настроена другая учетная запись Windows, то пользователь Интернета получит идентификатор этой учетной записи.

  • Если виртуальный каталог IIS настроен для использования обычной проверки подлинности, то пользователь Интернета получает идентификатор учетной записи Windows, для которой клиент указал имя пользователя и пароль в Интернете.

  • Если виртуальный каталог IIS настроен для использования встроенной проверки подлинности Windows, то пользователь Интернета получит идентификатор учетной записи Windows, для которой клиент указал имя пользователя Интернета и пароль.

Если при вызове метода Pull был указан errorTableName, то любые обнаруженные во время Push ошибки будут записаны в таблицу ошибок. Дополнительные сведения о работе таблицы ошибок см. в разделе «Обнаружение и разрешение конфликтов удаленного доступа к данным» в электронной документации по SQL Server Compact 3.5.

Пример

Следующий пример демонстрирует создание объекта SqlCeRemoteDataAccess, установку некоторых свойств и вызов метода Push.

' 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 Push Operation
    '
    rda = New SqlCeRemoteDataAccess( _
        "https://www.adventure-works.com/sqlmobile/sqlcesa35.dll", _
        "Data Source=MyDatabase.sdf")

    rda.InternetLogin = "MyLogin"
    rda.InternetPassword = "<password>"

    rda.Push("MyLocalTable", rdaOleDbConnectString, RdaBatchOption.BatchingOn)

    ' or, try this overload:
    '
    ' rda.Push("MyLocalTable", 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 Push Operation
    //
    rda = new SqlCeRemoteDataAccess(
        "https://www.adventure-works.com/sqlmobile/sqlcesa35.dll",
        "Data Source=MyDatabase.sdf");

    rda.InternetLogin = "MyLogin";
    rda.InternetPassword = "<password>";

    rda.Push("MyLocalTable", rdaOleDbConnectString, RdaBatchOption.BatchingOn);

    // or, try this overload:
    //
    // rda.Push("MyLocalTable", rdaOleDbConnectString);
}
catch (SqlCeException)
{
    // Handle errors here
    //
}
finally
{
    // Dispose of the RDA Object
    //
    rda.Dispose();
}

Пример

Следующий пример демонстрирует создание объекта SqlCeRemoteDataAccess, установку некоторых свойств и вызов метода Push.

' 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 Push Operation
    '
    rda = New SqlCeRemoteDataAccess( _
        "https://www.adventure-works.com/sqlmobile/sqlcesa35.dll", _
        "Data Source=MyDatabase.sdf")

    rda.InternetLogin = "MyLogin"
    rda.InternetPassword = "<password>"

    rda.Push("MyLocalTable", rdaOleDbConnectString, RdaBatchOption.BatchingOn)

    ' or, try this overload:
    '
    ' rda.Push("MyLocalTable", 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 Push Operation
    //
    rda = new SqlCeRemoteDataAccess(
        "https://www.adventure-works.com/sqlmobile/sqlcesa35.dll",
        "Data Source=MyDatabase.sdf");

    rda.InternetLogin = "MyLogin";
    rda.InternetPassword = "<password>";

    rda.Push("MyLocalTable", rdaOleDbConnectString, RdaBatchOption.BatchingOn);

    // or, try this overload:
    //
    // rda.Push("MyLocalTable", rdaOleDbConnectString);
}
catch (SqlCeException)
{
    // Handle errors here
    //
}
finally
{
    // Dispose of the RDA Object
    //
    rda.Dispose();
}

Многопоточное использование

Все общие статические члены (Shared в Microsoft Visual Basic) этого типа можно использовать в многопоточных операциях. Безопасная многопоточная работа с членами экземпляров типа не гарантируется.

Платформы

Платформы разработки

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
Сведения о версии
.NET Framework и NET Compact Framework
Поддерживается в версии 3.5
.NET Framework
Поддерживается в версии 3.0
.NET Compact Framework и .Net Framework
Поддерживается в версии 2.0

См. также

Справочник

SqlCeRemoteDataAccess Class
SqlCeRemoteDataAccess Members
System.Data.SqlServerCe Namespace