SqlCeConnection クラス
SQL Server Compact 3.5 データ ソースへの開いた接続を表します。
名前空間: System.Data.SqlServerCe
アセンブリ: System.Data.SqlServerCe (System.Data.SqlServerCe.dll)
構文
'宣言
Public NotInheritable Class SqlCeConnection _
Inherits DbConnection
'使用
Dim instance As SqlCeConnection
public sealed class SqlCeConnection : DbConnection
public ref class SqlCeConnection sealed : public DbConnection
[<SealedAttribute>]
type SqlCeConnection =
class
inherit DbConnection
end
public final class SqlCeConnection extends DbConnection
説明
SqlCeConnection オブジェクトは、データ ソースへの一意な接続を表します。SqlCeConnection のインスタンスを作成すると、すべてのプロパティが初期値に設定されます。これらの初期値の一覧については、SqlCeConnection コンストラクタのトピックを参照してください。
SqlCeConnection は、適用範囲外では閉じられません。そのため、Close または Dispose を呼び出して、明示的に接続を閉じる必要があります。
SQL Server Compact 3.5 では、複数のコマンドによる同一接続の共有、および複数の同時接続がサポートされます。したがって、同じ接続で SqlCeDataReader の複数のインスタンスを開いて使用できます。この動作は、System.Data.SqlClient の動作とは異なります。
SqlCeCommand を実行するメソッドで致命的な SqlCeException が生成された場合、SqlCeConnection が閉じられる可能性があります。ユーザーは接続を再び開いて、処理を継続できます。
現在の SQL Server Compact 3.5 は、Web サイトに使用するデータベースとして最適化されていません。既定では、ASP.NET 接続アプリケーションからの接続は、SQL Server Compact 3.5 内でブロックされます。SQL Server Compact 3.5 は、アプリケーション内で組み込み型データベースとして使用するために最適化されています。SQL Server Compact 3.5 を Web サイト用のデータベースとして使用するには、複数ユーザーやデータの同時更新をサポートする必要があります。これにより、パフォーマンスに問題が発生する可能性があります。このため、これらの利用方法はサポートされていません。SQL Server Express など、他のエディションの SQL Server は、Web サイトに使用するデータベースとして最適化されています。
同期する場合のために ASP.NET を使用して SQL Server Compact 3.5 データベースを作成するアプリケーションでは、SQL Server Compact 3.5 を ASP.NET で使用できます。ASP.NET で動作するように SQL Server Compact 3.5 の既定の動作を変更するには、次のコードを使用してください。
AppDomain.CurrentDomain.SetData("SQLServerCompactEditionUnderWebHosting", true)
使用例
SqlCeCommand および SqlCeConnection を作成する例を次に示します。SqlCeConnection が開かれ、SqlCeCommand 用の Connection として設定されます。この例では、次に、ExecuteNonQuery を呼び出し、接続を閉じます。
Dim conn As SqlCeConnection = Nothing
Try
conn = New SqlCeConnection("Data Source = MyDatabase.sdf; Password ='<pwd>'")
conn.Open()
Dim cmd As SqlCeCommand = conn.CreateCommand()
cmd.CommandText = "INSERT INTO Customers ([Customer ID], [Company Name]) Values('NWIND', 'Northwind Traders')"
cmd.ExecuteNonQuery()
Finally
conn.Close()
End Try
SqlCeConnection conn = null;
try
{
conn = new SqlCeConnection("Data Source = MyDatabase.sdf; Password ='<pwd>'");
conn.Open();
SqlCeCommand cmd = conn.CreateCommand();
cmd.CommandText = "INSERT INTO Customers ([Customer ID], [Company Name]) Values('NWIND', 'Northwind Traders')";
cmd.ExecuteNonQuery();
}
finally
{
conn.Close();
}
継承階層
System. . :: . .Object
System. . :: . .MarshalByRefObject
System.ComponentModel. . :: . .Component
System.Data.Common. . :: . .DbConnection
System.Data.SqlServerCe..::..SqlCeConnection
スレッド セーフ
Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.