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


SqlCeEngine Class

Представляет свойства, методы и другие объекты компонента SQL Server Compact 3.5 Engine. Этот класс не может быть унаследован.

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

Синтаксис

'Декларация
Public NotInheritable Class SqlCeEngine
    Implements IDisposable
public sealed class SqlCeEngine : IDisposable
public ref class SqlCeEngine sealed : IDisposable
public final class SqlCeEngine implements IDisposable
public final class SqlCeEngine 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)

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

System.Object
  System.Data.SqlServerCe.SqlCeEngine

Пример

В следующем образце показано, как создать новую базу данных SQL Server Compact 3.5.

If File.Exists("Test.sdf") Then
   File.Delete("Test.sdf")
End If 
Dim connStr As String = "Data Source = Test.sdf; Password = <password>"

Dim engine As New SqlCeEngine(connStr)
engine.CreateDatabase()
engine.Dispose()

Dim conn As SqlCeConnection = Nothing

Try
   conn = New SqlCeConnection(connStr)
   conn.Open()
   
   Dim cmd As SqlCeCommand = conn.CreateCommand()
   cmd.CommandText = "CREATE TABLE myTable (col1 int, col2 ntext)"
   cmd.ExecuteNonQuery()
Catch
Finally
   conn.Close()
End Try
if (File.Exists("Test.sdf"))
    File.Delete("Test.sdf");

string connStr = "Data Source = Test.sdf; Password = <password>";
 
SqlCeEngine engine = new SqlCeEngine(connStr);
engine.CreateDatabase();
engine.Dispose();

SqlCeConnection conn = null;

try {
    conn = new SqlCeConnection(connStr);
    conn.Open();

    SqlCeCommand cmd = conn.CreateCommand();
    cmd.CommandText = "CREATE TABLE myTable (col1 int, col2 ntext)";
    cmd.ExecuteNonQuery();
}
catch {}
finally {
    conn.Close();
}

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

Все общие статические члены (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

См. также

Справочник

SqlCeEngine Members
System.Data.SqlServerCe Namespace