Поделиться через


SqlCeRemoteDataAccess Class

Инициализация нового экземпляра объекта SqlCeRemoteDataAccess. Дополнительные сведения об удаленном доступе к данным см. в разделе Использование удаленного доступа к данным. Инициализация нового экземпляра объекта SqlCeRemoteDataAccess. Дополнительные сведения об удаленном доступе к данным см. в разделе Использование удаленного доступа к данным.

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

Синтаксис

'Декларация
Public NotInheritable Class SqlCeRemoteDataAccess
    Implements IDisposable
public sealed class SqlCeRemoteDataAccess : IDisposable
public ref class SqlCeRemoteDataAccess sealed : IDisposable
public final class SqlCeRemoteDataAccess implements IDisposable
public final class SqlCeRemoteDataAccess implements IDisposable

Замечания

В настоящее время SQL Server Compact 3.5 не оптимизирован для работы в качестве базы данных для веб-узлов. По умолчанию SQL Server Compact 3.5 блокирует соединения от приложений, работающих через ASP.NET. SQL Server Compact 3.5 оптимизирован для работы с приложениями в качестве внедренной базы данных. Чтобы SQL Server Compact 3.5 мог использоваться в качестве базы данных для веб-узлов, необходима поддержка нескольких пользователей и одновременного изменения данных. Это может привести к снижению производительности. Поэтому такое применение не поддерживается. Для работы в качестве баз данных веб-узлов оптимизированы другие выпуски SQL Server, в том числе SQL Server 2005 Express Edition и более поздние версии.

Совместное применение SQL Server Compact 3.5 и ASP.NET поддерживается для тех случаев, когда ASP.NET используется для создания баз данных SQL Server Compact 3.5 для синхронизации. Следующий код позволяет изменить поведение SQL Server Compact 3.5 по умолчанию для работы в ASP.NET.

AppDomain.CurrentDomain.SetData("SQLServerCompactEditionUnderWebHosting", true)

Замечания

В настоящее время SQL Server Compact 3.5 не оптимизирован для работы в качестве базы данных для веб-узлов. По умолчанию SQL Server Compact 3.5 блокирует соединения от приложений, работающих через ASP.NET. SQL Server Compact 3.5 оптимизирован для работы с приложениями в качестве внедренной базы данных. Чтобы SQL Server Compact 3.5 мог использоваться в качестве базы данных для веб-узлов, необходима поддержка нескольких пользователей и одновременного изменения данных. Это может привести к снижению производительности. Поэтому такое применение не поддерживается. Для работы в качестве баз данных веб-узлов оптимизированы другие выпуски SQL Server, в том числе SQL Server 2005 Express Edition и более поздние версии.

Совместное применение SQL Server Compact 3.5 и ASP.NET поддерживается для тех случаев, когда ASP.NET используется для создания баз данных SQL Server Compact 3.5 для синхронизации. Следующий код позволяет изменить поведение SQL Server Compact 3.5 по умолчанию для работы в ASP.NET.

AppDomain.CurrentDomain.SetData("SQLServerCompactEditionUnderWebHosting", true)

Иерархия наследования

System.Object
  System.Data.SqlServerCe.SqlCeRemoteDataAccess

Пример

Следующий пример демонстрирует инициализацию нового экземпляра объекта SqlCeRemoteDataAccess.

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

Пример

Следующий пример демонстрирует инициализацию нового экземпляра объекта SqlCeRemoteDataAccess.

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

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

Все общие статические члены (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 Members
System.Data.SqlServerCe Namespace