SELECT SUM文で取得したSUMの値を、DataRowで取得するには。
- 題名: SELECT SUM文で取得したSUMの値を、DataRowで取得するには。
- 著者: ERI
- 日時: 2013/05/12 19:31:49
- ID: 31521
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: SELECT SUM文で取得したSUMの値を、DataRowで取得するには。
- 著者: shu
- 日時: 2013/05/13 7:41:09
- ID: 31524
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: SELECT SUM文で取得したSUMの値を、DataRowで取得するには。
- 著者: ERI
- 日時: 2013/05/13 10:40:03
- ID: 31525
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: SELECT SUM文で取得したSUMの値を、DataRowで取得するには。
- 著者: ERI
- 日時: 2013/05/13 11:19:43
- ID: 31526
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: SELECT SUM文で取得したSUMの値を、DataRowで取得するには。
- 著者: ERI
- 日時: 2013/05/13 11:20:35
- ID: 31527
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
こんにちは。
お忙しいところ、失礼致します。
以下、ご質問させて頂きます。
まず、SQLServerに、下記のような構造の、[顧客マスタ]が、あると、します。
---------------------------------------------------
[顧客マスタ]
顧客ID(数値型)
顧客名(テキスト型)
年齢(数値型)
---------------------------------------------------
中には、レコードが、3人分、入っております。
プロジェクトにおいては、
1つのフォームに、ボタンが2つ、テキストが2つ、あります。
年齢ボタン(btnNenrei)をクリックすると、[顧客マスタ]で、[顧客ID]が最も小さいレコードの、[年齢]が取得され、年齢テキスト(txtNenrei)に、表示されます。
また、年齢合計ボタン(btnNenreiGokei)をクリックすると、[顧客マスタ]に入っている3人分のレコードにおける[年齢]の合計値が取得され、年齢合計テキスト(txtNenreiGokei)に、表示されます。
まず、年齢ボタンのコードです。
---------------------------------------------------
Private Sub btnNenrei_Click(以下、略)
Dim cn As New SqlClient.SqlConnection(接続文字列)
Dim strSQL As String
Dim da As SqlClient.SqlDataAdapter
Dim ds As New DataSet
Dim dt As DataTable
Dim dr() As DataRow
Dim intNenrei As integer
strSQL = "SELECT * FROM [顧客マスタ] ORDER BY [顧客ID] ASC"
da = New SqlClient.SqlDataAdapter(strSQL, cn)
da.Fill(ds, "顧客マスタ")
dt = ds.Tables("顧客マスタ")
dr = dt.Select
intNenrei = Cint(dr(0)("年齢"))
txtNenrei.Text = Cstr(intNenrei)
da = Nothing
ds = Nothing
dt = Nothing
dr = Nothing
End Sub
---------------------------------------------
上記のコード中で、「dr(0)("年齢")」という表記は、エラーを起こさずに、通ります。
次に、年齢合計ボタンのコードです。
---------------------------------------------
Private Sub btnNenreiGokei_Click(以下、略)
Dim cn As New SqlClient.SqlConnection(接続文字列)
Dim strSQL As String
Dim da As SqlClient.SqlDataAdapter
Dim ds As New DataSet
Dim dt As DataTable
Dim dr() As DataRow
Dim intNenreiGokei As integer
strSQL = "SELECT SUM([年齢]) AS [年齢合計] FROM [顧客マスタ]"
da = New SqlClient.SqlDataAdapter(strSQL, cn)
da.Fill(ds, "顧客マスタ")
dt = ds.Tables("顧客マスタ")
dr = dt.Select
intNenreiGokei = Cint(dr(0)("年齢合計"))
txtNenreiGokei.Text = Cstr(intNenreiGokei)
da = Nothing
ds = Nothing
dt = Nothing
dr = Nothing
End Sub
---------------------------------------------
上記のコード中で、「dr(0)("年齢合計")」という表記は、値を取得しません。
また、dr(0)("年齢")という表記の場合、
列'年齢'は、テーブル[顧客マスタ]に、所属していない、と、エラーメッセージが、出てしまいます。
この、年齢合計の値を、取得して、intNenreiGokeiに代入したいのですが、
この場合、どのように記述したらよいか、分からない状態です。
お分かりになられる方がいらっしゃいましたら、
誠にお手数と存じますが、
ご教示頂きたく、存じます。
どうぞよろしくお願い致します。