SqlCommand.ExecuteScalar メソッド
アセンブリ: System.Data (system.data.dll 内)

Dim instance As SqlCommand Dim returnValue As Object returnValue = instance.ExecuteScalar
結果セットの最初の行の最初の列。結果セットが空の場合は、null 参照。


ExecuteScalar メソッドを使用して、データベースから単一の値 (集計値など) を取得します。ExecuteReader メソッドを使用し、SqlDataReader によって返されたデータから単一値を生成するよりも、このメソッドを使用した方がコードが簡潔になります。

SqlCommand を作成し、ExecuteScalar を使用して実行する例を次に示します。この例は、テーブルに挿入する新しい値 (文字列) と、データ ソースへの接続文字列を引数として受け取ります。行の挿入に成功した場合は新しい ID 列値を、失敗した場合は 0 を返します。
Public Function AddProductCategory( _ ByVal newName As String, ByVal connString As String) As Integer Dim newProdID As Int32 = 0 Dim sql As String = _ "INSERT INTO Production.ProductCategory (Name) VALUES (@Name); " _ & "SELECT CAST(scope_identity() AS int);" Using conn As New SqlConnection(connString) Dim cmd As New SqlCommand(sql, conn) cmd.Parameters.Add("@Name", SqlDbType.VarChar) cmd.Parameters("@Name").Value = newName Try conn.Open() newProdID = Convert.ToInt32(cmd.ExecuteScalar()) Catch ex As Exception Console.WriteLine(ex.Message) End Try End Using Return newProdID End Function
static public int AddProductCategory(string newName, string connString) { Int32 newProdID = 0; string sql = "INSERT INTO Production.ProductCategory (Name) VALUES (@Name); " + "SELECT CAST(scope_identity() AS int)"; using (SqlConnection conn = new SqlConnection(connString)) { SqlCommand cmd = new SqlCommand(sql, conn); cmd.Parameters.Add("@Name", SqlDbType.VarChar); cmd.Parameters["@name"].Value = newName; try { conn.Open(); newProdID = (Int32)cmd.ExecuteScalar(); } catch (Exception ex) { Console.WriteLine(ex.Message); } } return (int)newProdID; }

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からSqlCommand.ExecuteScalar メソッドを検索する場合は、下記のリンクをクリックしてください。

- SqlCommand.ExecuteScalar メソッドのページへのリンク