Dim D As DataTable = 使うテーブル Dim S As String = dgvMain.CurrentRow.Cells(0).ToString 'プライマリキー D.Rows(0).Delete() DA.DeleteCommand.CommandText = "delete from テーブル名 where 条件文" DA.Update(D)
kou-kou-様の書いてある構文の中で Dim S As String = dgvMain.CurrentRow.Cells(0).ToString 'プライマリキー がありこれを使用すれば列、行の取得ができましたが、これでは”S”はストリングなのでデリーと文を走らせたときにエラーがでます。 ストリングをインテジャーに変えればできるかとおもいます。 少しお尋ねしたいことがあります。 DA.DeleteCommand.CommandText = "delete from テーブル名 where 条件文" DA.Update(D)
■No23556に返信(vb初心者さんの記事) > 自分の考えとしては > Itemを使用して列の指定はそのまま行の指定だけ手動でできるCurrentRowをItemの()の中にいれてあげればできるのかと思っていましたが。 > 力不足でしょうか・・・できませんでした。 > > kou-kou-様の書いてある構文の中で > Dim S As String = dgvMain.CurrentRow.Cells(0).ToString 'プライマリキー > がありこれを使用すれば列、行の取得ができましたが、これでは”S”はストリングなのでデリーと文を走らせたときにエラーがでます。 > ストリングをインテジャーに変えればできるかとおもいます。 > 少しお尋ねしたいことがあります。 > DA.DeleteCommand.CommandText = "delete from テーブル名 where 条件文" > DA.Update(D) > > に書いてありますDAというのは何でしょうか・・・ > 教えてもらえますと助かります。 > 質問ばかりで申し訳ありません。 >
すいません、焦って書いたから抜けてましたm(_ _)m 正しくは Dim S As String = DataGridView1.CurrentRow.Cells(0).Value.ToString() です。valueが抜けていたので、エラー原因は型ではないと思います(>_<) キチンと確認していませんでした、すみませんm(_ _)m
無事プログラムを作成することができました。 kou-kou-様のコードをベースにして Dim rows As Integer '選択されている行の取得 For Each r As DataGridViewRow In DataGridView1.SelectedRows '変数に格納 rows = r.Index Next r
'DataGridView1(横の列, たての行).Value の取得 Dim S As String = DataGridView1(0, rows).Value これで値の取得ができました。 後は変数SをSQL文(デリーと文)で実行すればできました! 色々とお世話になり、やさしく教えていただきありがとうございました。 解決したのでチェックいれます。
分類:[.NET]
VB データグリッドビューについて。
1つお聞きしたいことがあります。
SQL.CommandText = "SELECT mem_id,mem_name,mem_kana,mem_sex FROM tbl_Member"
省略していますが、VBを使用しDBに接続SQL文でDBから情報取得
Adapter.SelectCommand = SQL
Adapter.Fill(Table)
DataGridView1.DataSource = Table
データグリッドで表示
ここで質問があります、グリッド自体で選択された行をDBごと削除するにはどのようにしたらできるのでしょうか?
自分ではmem_id(プライマリーキー)を取得しSQL文を使用して削除しえばできるとおもうのですが
コードがまったく思いつきません。
まずは、行を選択したときに、mem_idの取得がしたい
その次に削除。
どなたかわかる方ご教授お願いします。