SqlCeResultSet クラス

継承階層

System.Object
  System.MarshalByRefObject
    System.Data.Common.DbDataReader
      System.Data.SqlServerCe.SqlCeDataReader
        System.Data.SqlServerCe.SqlCeResultSet

名前空間:  System.Data.SqlServerCe
アセンブリ:  System.Data.SqlServerCe (System.Data.SqlServerCe.dll)

構文

'宣言
Public Class SqlCeResultSet _
    Inherits SqlCeDataReader _
    Implements IEnumerable, IListSource
'使用
Dim instance As SqlCeResultSet
public class SqlCeResultSet : SqlCeDataReader, 
    IEnumerable, IListSource
public ref class SqlCeResultSet : public SqlCeDataReader, 
    IEnumerable, IListSource
type SqlCeResultSet =  
    class
        inherit SqlCeDataReader
        interface IEnumerable
        interface IListSource
    end
public class SqlCeResultSet extends SqlCeDataReader implements IEnumerable, IListSource

SqlCeResultSet 型は、以下のメンバーを公開しています。

コンストラクター

  名前 説明
プロテクト メソッド SqlCeResultSet セキュリティ クリティカル。使用しないでください。SqlCeResultSet を作成するには、SqlCeCommand の ExecuteResultSet(ResultSetOptions) メソッドを呼び出す必要があります。

Top

プロパティ

  名前 説明
プロテクト プロパティ ContainsListCollection インフラストラクチャです。
パブリック プロパティ Depth 現在の行の入れ子の深さを示す値を取得します。 (SqlCeDataReader から継承されます。)
パブリック プロパティ FieldCount クエリの SELECT 句内の列数を取得します。 (SqlCeDataReader から継承されます。)
パブリック プロパティ HasRows SqlCeDataReader に 1 行以上の行が格納されているかどうかを示す値を取得します。 (SqlCeDataReader から継承されます。)
パブリック プロパティ HiddenFieldCount インフラストラクチャです。 (SqlCeDataReader から継承されます。)
パブリック プロパティ IsClosed データ リーダーが閉じているかどうかを示します。 (SqlCeDataReader から継承されます。)
パブリック プロパティ Item[Int32] SqlCeResultSet のインデクサーとして機能します。 (SqlCeDataReader.Item[Int32] をオーバーライドします。)
パブリック プロパティ Item[String] SqlCeResultSet のインデクサーとして機能します。 (SqlCeDataReader.Item[String] をオーバーライドします。)
パブリック プロパティ RecordsAffected SQL ステートメントの実行によって変更、挿入、または削除された行の数を取得します。 (SqlCeDataReader から継承されます。)
パブリック プロパティ ResultSetView SqlCeResultSet をコントロールにデータ バインドするときに使用されます。
パブリック プロパティ Scrollable SqlCeResultSet がスクロール可能かどうかを判断します。
パブリック プロパティ Sensitivity SqlCeResultSet の感度を判断します。
パブリック プロパティ Updatable SqlCeResultSet 内の値が変更可能かどうかを判断します。
パブリック プロパティ VisibleFieldCount (DbDataReader から継承されます。)

Top

メソッド

  名前 説明
パブリック メソッド Close SqlCeDataReader オブジェクトを閉じます。 (SqlCeDataReader から継承されます。)
パブリック メソッド CreateObjRef (MarshalByRefObject から継承されます。)
パブリック メソッド CreateRecord サーバーに新しい行を作成し、SqlCeUpdatableRecord オブジェクトを返します。
パブリック メソッド Delete サーバーのデータ ソースから現在のレコードを削除します。
パブリック メソッド Dispose() インフラストラクチャです。この SqlCeDataReader によって消費されているリソースを解放します。 (SqlCeDataReader から継承されます。)
プロテクト メソッド Dispose(Boolean) この SqlCeDataReader で使用されているアンマネージ リソースを解放し、必要に応じてマネージ リソースも解放します。 (SqlCeDataReader から継承されます。)
パブリック メソッド Equals (Object から継承されます。)
プロテクト メソッド Finalize SqlCeDataReader がガベージ コレクションによってクリアされる前に、アンマネージ リソースを解放し、その他のクリーンアップ操作を実行します。 (SqlCeDataReader から継承されます。)
パブリック メソッド GetBoolean 指定したインデックス位置にある列の値をブール値として返します。 (SqlCeDataReader.GetBoolean(Int32) をオーバーライドします。)
パブリック メソッド GetByte 指定したインデックス位置にある列の値をバイト値として返します。 (SqlCeDataReader.GetByte(Int32) をオーバーライドします。)
パブリック メソッド GetBytes 指定したフィールドの指定した位置を開始位置として、連続するバイトをバッファーにコピーします。 (SqlCeDataReader.GetBytes(Int32, Int64, array<Byte[], Int32, Int32) をオーバーライドします。)
パブリック メソッド GetChar .NET Compact Framework Data Provider for SQL Server Compact ではサポートされていません。 (SqlCeDataReader から継承されます。)
パブリック メソッド GetChars 指定したフィールドの指定した位置を開始位置として、連続する文字をバッファーにコピーします。 (SqlCeDataReader.GetChars(Int32, Int64, array<Char[], Int32, Int32) をオーバーライドします。)
パブリック メソッド GetData (DbDataReader から継承されます。)
パブリック メソッド GetDataTypeName ソース データ型名を取得します。 (SqlCeDataReader から継承されます。)
パブリック メソッド GetDateTime 指定したインデックス位置にある列の値を DateTime として返します。 (SqlCeDataReader.GetDateTime(Int32) をオーバーライドします。)
プロテクト メソッド GetDbDataReader (DbDataReader から継承されます。)
パブリック メソッド GetDecimal 指定したインデックス位置にある列の値を Double として返します。 (SqlCeDataReader.GetDecimal(Int32) をオーバーライドします。)
パブリック メソッド GetDouble 指定したインデックス位置にある列の値を Double として返します。 (SqlCeDataReader.GetDouble(Int32) をオーバーライドします。)
パブリック メソッド GetEnumerator データ リーダー内の行を反復処理するために使用できる IEnumerator を返します。 (SqlCeDataReader.GetEnumerator() をオーバーライドします。)
パブリック メソッド GetFieldType オブジェクトのデータ型である Type を取得します。 (SqlCeDataReader から継承されます。)
パブリック メソッド GetFloat 指定したインデックス位置にある列の値を Float として返します。 (SqlCeDataReader.GetFloat(Int32) をオーバーライドします。)
パブリック メソッド GetGuid 指定したインデックス位置にある列の値を GUID として返します。 (SqlCeDataReader.GetGuid(Int32) をオーバーライドします。)
パブリック メソッド GetHashCode (Object から継承されます。)
パブリック メソッド GetInt16 指定したインデックス位置にある列の値を Int16 として返します。 (SqlCeDataReader.GetInt16(Int32) をオーバーライドします。)
パブリック メソッド GetInt32 指定したインデックス位置にある列の値を Int32 として返します。 (SqlCeDataReader.GetInt32(Int32) をオーバーライドします。)
パブリック メソッド GetInt64 指定したインデックス位置にある列の値を Int64 として返します。 (SqlCeDataReader.GetInt64(Int32) をオーバーライドします。)
パブリック メソッド GetLifetimeService (MarshalByRefObject から継承されます。)
プロテクト メソッド GetList ResultSetView のインスタンスを返します。
パブリック メソッド GetName 指定した列の名前を取得します。 (SqlCeDataReader から継承されます。)
パブリック メソッド GetOrdinal 列名を指定して、列の序数を取得します。 (SqlCeDataReader から継承されます。)
パブリック メソッド GetProviderSpecificFieldType 基になるプロバイダー固有フィールド型の内部表現である Object を取得します。 (SqlCeDataReader から継承されます。)
パブリック メソッド GetProviderSpecificValue (DbDataReader から継承されます。)
パブリック メソッド GetProviderSpecificValues (DbDataReader から継承されます。)
パブリック メソッド GetSchemaTable SqlCeDataReader の列メタデータを記述する DataTable を返します。 (SqlCeDataReader から継承されます。)
パブリック メソッド GetSqlBinary 指定したインデックス位置にある列の値を SqlBinary 型として返します。 (SqlCeDataReader.GetSqlBinary(Int32) をオーバーライドします。)
パブリック メソッド GetSqlBoolean 指定したインデックス位置にある列の値を SqlBoolean 型として返します。 (SqlCeDataReader.GetSqlBoolean(Int32) をオーバーライドします。)
パブリック メソッド GetSqlByte 指定したインデックス位置にある列の値を SqlByte 型として返します。 (SqlCeDataReader.GetSqlByte(Int32) をオーバーライドします。)
パブリック メソッド GetSqlDateTime 指定したインデックス位置にある列の値を SqlDateTime 型として返します。 (SqlCeDataReader.GetSqlDateTime(Int32) をオーバーライドします。)
パブリック メソッド GetSqlDecimal 指定したインデックス位置にある列の値を SqlDecimal 型として返します。 (SqlCeDataReader.GetSqlDecimal(Int32) をオーバーライドします。)
パブリック メソッド GetSqlDouble 指定したインデックス位置にある列の値を SqlDouble 型として返します。 (SqlCeDataReader.GetSqlDouble(Int32) をオーバーライドします。)
パブリック メソッド GetSqlGuid 指定したインデックス位置にある列の値を SqlGuid 型として返します。 (SqlCeDataReader.GetSqlGuid(Int32) をオーバーライドします。)
パブリック メソッド GetSqlInt16 指定したインデックス位置にある列の値を SqlInt16 型として返します。 (SqlCeDataReader.GetSqlInt16(Int32) をオーバーライドします。)
パブリック メソッド GetSqlInt32 指定したインデックス位置にある列の値を SqlInt32 型として返します。 (SqlCeDataReader.GetSqlInt32(Int32) をオーバーライドします。)
パブリック メソッド GetSqlInt64 指定したインデックス位置にある列の値を SqlInt64 型として返します。 (SqlCeDataReader.GetSqlInt64(Int32) をオーバーライドします。)
パブリック メソッド GetSqlMetaData 指定した列に関連付けられたメタデータ情報を返します。
パブリック メソッド GetSqlMoney 指定したインデックス位置にある列の値を SqlMoney 型として返します。 (SqlCeDataReader.GetSqlMoney(Int32) をオーバーライドします。)
パブリック メソッド GetSqlSingle 指定したインデックス位置にある列の値を SqlSingle 型として返します。 (SqlCeDataReader.GetSqlSingle(Int32) をオーバーライドします。)
パブリック メソッド GetSqlString 指定したインデックス位置にある列の値を SqlString 型として返します。 (SqlCeDataReader.GetSqlString(Int32) をオーバーライドします。)
パブリック メソッド GetString 指定したインデックス位置にある列の値を String 型として返します。 (SqlCeDataReader.GetString(Int32) をオーバーライドします。)
パブリック メソッド GetType (Object から継承されます。)
パブリック メソッド GetValue 指定したフィールドの値を返します。 (SqlCeDataReader.GetValue(Int32) をオーバーライドします。)
パブリック メソッド GetValues 指定したレコードのすべてのフィールドの配列を取得します。 (SqlCeDataReader.GetValues(array<Object[]) をオーバーライドします。)
パブリック メソッド InitializeLifetimeService (MarshalByRefObject から継承されます。)
パブリック メソッド Insert(SqlCeUpdatableRecord) 指定した SqlCeUpdatableRecord を基になる行セットに挿入します。
パブリック メソッド Insert(SqlCeUpdatableRecord, DbInsertOptions) 指定した SqlCeUpdatableRecord を基になる行セットに挿入し、カーソルの配置方法を指定します。
プロテクト メソッド IsCommandBehavior 指定した CommandBehavior がこの SqlCeDataReader のものと一致するかどうかを判断します。 (SqlCeDataReader から継承されます。)
パブリック メソッド IsDBNull 指定した序数位置にあるフィールドが null かどうかを判断します。 (SqlCeDataReader.IsDBNull(Int32) をオーバーライドします。)
パブリック メソッド IsSetAsDefault 指定された序数位置にあるフィールドが基になる既定値を使用するように設定されているかどうかを確認します。
プロテクト メソッド MemberwiseClone() (Object から継承されます。)
プロテクト メソッド MemberwiseClone(Boolean) (MarshalByRefObject から継承されます。)
パブリック メソッド NextResult .NET Compact Framework Data Provider for SQL Server Compact ではサポートされていません。 (SqlCeDataReader から継承されます。)
プロテクト メソッド OnMove インフラストラクチャです。 (SqlCeDataReader.OnMove() をオーバーライドします。)
パブリック メソッド Read SqlCeDataReader を次のレコードに進めます。 (SqlCeDataReader から継承されます。)
パブリック メソッド ReadAbsolute ResultSet 内の特定のレコードにリーダーを移動します。
パブリック メソッド ReadFirst ResultSet 内の最初のレコードにリーダーを移動します。
パブリック メソッド ReadLast ResultSet 内の最後のレコードにリーダーを移動します。
パブリック メソッド ReadPrevious 現在のレコードの前にあるレコードにリーダーを移動します。
パブリック メソッド ReadRelative 現在の位置から指定した分だけリーダーを移動します。
パブリック メソッド Seek SqlCeDataReader を、指定したパラメーターに一致するインデックス値が存在するレコードに配置します。 (SqlCeDataReader から継承されます。)
パブリック メソッド SetBoolean 指定した列の値に、渡されたブール値を設定します。
パブリック メソッド SetByte 指定した列の値に、渡されたバイト値を設定します。
パブリック メソッド SetBytes 指定したバッファーから指定した列にバイトの長さをコピーします。コピーは、フィールド内の指定位置から開始されます。
パブリック メソッド SetChar 指定した列の値に、渡された Char 値を設定します。
パブリック メソッド SetChars 指定したバッファーから指定した列に文字の長さをコピーします。コピーは、フィールド内の指定位置から開始されます。
パブリック メソッド SetDateTime 指定した列の値に、渡された DateTime 値を設定します。
パブリック メソッド SetDecimal 指定した列の値に、渡された Decimal 値を設定します。
パブリック メソッド SetDefault 指定した列に既定値を設定します。
パブリック メソッド SetDouble 指定した列の値に、渡された Double 値を設定します。
パブリック メソッド SetFloat 指定した列の値に、渡された Float 値を設定します。
パブリック メソッド SetGuid 指定した列の値に、渡された Guid 値を設定します。
パブリック メソッド SetInt16 指定した列の値に、渡された Int16 値を設定します。
パブリック メソッド SetInt32 指定した列の値に、渡された Int32 値を設定します。
パブリック メソッド SetInt64 指定した列の値に、渡された Int64 値を設定します。
パブリック メソッド SetObjectRef 指定した位置の列にオブジェクトをバインドします。
パブリック メソッド SetSqlBinary 指定した列の値に、渡されてきた SqlBinary 値を設定します。
パブリック メソッド SetSqlBoolean 指定した列の値に、渡された SqlBoolean 値を設定します。
パブリック メソッド SetSqlByte 指定した列の値に、渡された SqlByte 値を設定します。
パブリック メソッド SetSqlDateTime 指定した列の値に、渡された SqlDateTime 値を設定します。
パブリック メソッド SetSqlDecimal 指定した列の値に、渡された SqlDecimal 値を設定します。
パブリック メソッド SetSqlDouble 指定した列の値に、渡された SqlDouble 値を設定します。
パブリック メソッド SetSqlGuid 指定した列の値に、渡された SqlGuid 値を設定します。
パブリック メソッド SetSqlInt16 指定した列の値に、渡された SqlInt16 値を設定します。
パブリック メソッド SetSqlInt32 指定した列の値に、渡された SqlInt32 値を設定します。
パブリック メソッド SetSqlInt64 指定した列の値に、渡された SqlInt64 値を設定します。
パブリック メソッド SetSqlMoney 指定した列の値に、渡された SqlMoney 値を設定します。
パブリック メソッド SetSqlSingle 指定した列の値に、渡された SqlSingle 値を設定します。
パブリック メソッド SetSqlString 指定した列の値に、渡された SqlString 値を設定します。
パブリック メソッド SetString 指定した列の値に、渡された String 値を設定します。
パブリック メソッド SetValue 指定した列の値に、渡された値を設定します。
パブリック メソッド SetValues 指定したレコード内の各フィールドに、指定した配列内の対応する値を設定します。
パブリック メソッド ToString (Object から継承されます。)
パブリック メソッド Update 現在のレコードから、サーバーの基になる行に変更が送信されます。

Top

明示的なインターフェイスの実装

  名前 説明
明示的なインターフェイスの実装プライベート プロパティ IListSource.ContainsListCollection
明示的なインターフェイスの実装プライベート メソッド IEnumerable.GetEnumerator
明示的なインターフェイスの実装プライベート メソッド IListSource.GetList
明示的なインターフェイスの実装プライベート メソッド IDataRecord.GetData (DbDataReader から継承されます。)

Top

説明

SQL Server Compact の以前のバージョンでは、コントロールをデータにバインドするには、DataSet を使用する必要がありました。SqlCeDataReader を使用すると DataSet より優れたパフォーマンスを得られますが、移動は前方向だけであり、更新もできないカーソルです。SQL Server Compact では、SqlCeResultSet が、DataSet の更新機能とスクロール機能に加えて SqlCeDataReader と同様のパフォーマンスを提供します。

SqlCeResultSet を作成するには、オブジェクトのコンストラクターを使用せずに、ExecuteResultSet メソッドを呼び出す必要があります。

ResultSetOptions では、SqlCeResultSet のスクロール機能、更新機能、および感度 (SqlCeResultSet が、自身またはその他のメソッドによって加えられた変更を検知できるかどうかを指定) を指定できます。

SqlCeDataReader の既定の位置は、先頭のレコードの前です。データへのアクセスを開始するには、Read を呼び出す必要があります。最初の Read で、カーソルが先頭レコードに配置されます。これは、SqlCeResultSet.Read メソッドの動作と異なります。SqlCeResultSet の既定の位置は、先頭レコードです。SqlCeResultSet を作成した直後に SqlCeResultSet.Read メソッドを呼び出すと、カーソルが 2 番目のレコードに移動します。

使用例

新しい SQL Server Compact データベースを作成する例を次に示します。SqlCeResultSet は、初期化され、データセットにデータが格納されます。

Dim conn As SqlCeConnection = Nothing

Try
    File.Delete("Test.sdf")

    Dim engine As New SqlCeEngine("Data Source = Test.sdf")
    engine.CreateDatabase()

    conn = New SqlCeConnection("Data Source = Test.sdf")
    conn.Open()

    Dim cmd As SqlCeCommand = conn.CreateCommand()
    cmd.CommandText = "CREATE TABLE myTable (col1 INT, col2 MONEY, col3 NVARCHAR(200))"
    cmd.ExecuteNonQuery()

    cmd.CommandText = "SELECT * FROM myTable"

    Dim rs As SqlCeResultSet = cmd.ExecuteResultSet(ResultSetOptions.Updatable Or ResultSetOptions.Scrollable)

    Dim rec As SqlCeUpdatableRecord = rs.CreateRecord()

    rec.SetInt32(0, 34)
    rec.SetDecimal(1, System.Convert.ToDecimal(44.66))
    rec.SetString(2, "Sample text")

    rs.Insert(rec)
Catch e As Exception
    MessageBox.Show(e.Message)
Finally
    conn.Close()
End Try
SqlCeConnection conn = null;

try
{
    File.Delete("Test.sdf");

    SqlCeEngine engine = new SqlCeEngine("Data Source = Test.sdf");
    engine.CreateDatabase();

    conn = new SqlCeConnection("Data Source = Test.sdf");
    conn.Open();

    SqlCeCommand cmd = conn.CreateCommand();
    cmd.CommandText = "CREATE TABLE myTable (col1 INT, col2 MONEY, col3 NVARCHAR(200))";
    cmd.ExecuteNonQuery();

    cmd.CommandText = "SELECT * FROM myTable";

    SqlCeResultSet rs = cmd.ExecuteResultSet(ResultSetOptions.Updatable | 
        ResultSetOptions.Scrollable);

    SqlCeUpdatableRecord rec = rs.CreateRecord();

    rec.SetInt32(0, 34);
    rec.SetDecimal(1, (decimal)44.66);
    rec.SetString(2, "Sample text");

    rs.Insert(rec);
}
catch (Exception e)
{
    MessageBox.Show(e.Message);
}
finally
{
    conn.Close();
}

スレッド セーフ

この型の public static (Microsoft Visual Basic では Shared) のすべてのメンバーは、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

関連項目

参照

System.Data.SqlServerCe 名前空間