次の方法で共有


IDbCommand.ExecuteScalar メソッド

クエリを実行し、そのクエリが返す結果セットの最初の行にある最初の列を返します。余分な列または行は無視されます。

Function ExecuteScalar() As Object
[C#]
object ExecuteScalar();
[C++]
Object* ExecuteScalar();
[JScript]
function ExecuteScalar() : Object;

戻り値

結果セットの最初の行にある最初の列。

解説

ExecuteScalar メソッドを使用して、データベースから単一値 (集計値など) を取得します。このメソッドを使用する場合に必要なコードは、 ExecuteReader メソッドを使用した後で、 IDataReader によって返されたデータを使用して、単一値を生成するための操作を実行する場合に比べて少なくて済みます。

通常の ExecuteScalar クエリを書式設定する例を次の C# に示します。

CommandText = "select count(*) as NumberOfRegions from region";
Int32 count = (int) ExecuteScalar();

使用例

[Visual Basic, C#, C++] 派生クラス SqlCommand のインスタンスを作成し、 ExecuteScalar を使用してこのインスタンスを実行する例を次に示します。この例では、集計結果を返す Transact-SQL ステートメントである文字列と、データ ソースに接続するために使用する文字列を渡します。

 
Public Sub CreateMySqlCommand(myScalarQuery As String, myConnection As SqlConnection)
    Dim myCommand As New SqlCommand(myScalarQuery, myConnection)
    myCommand.Connection.Open()
    myCommand.ExecuteScalar()
    myConnection.Close()
End Sub 'CreateMySqlCommand

[C#] 
public void CreateMySqlCommand(string myScalarQuery, SqlConnection myConnection) 
 {
    SqlCommand myCommand = new SqlCommand(myScalarQuery, myConnection);
    myCommand.Connection.Open();
    myCommand.ExecuteScalar();
    myConnection.Close();
 }

[C++] 
public:
    void CreateMySqlCommand(String* myScalarQuery, SqlConnection* myConnection)
    {
        SqlCommand* myCommand = new SqlCommand(myScalarQuery, myConnection);
        myCommand->Connection->Open();
        myCommand->ExecuteScalar();
        myConnection->Close();
    }

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

参照

IDbCommand インターフェイス | IDbCommand メンバ | System.Data 名前空間