ホームページ データベース mysql チュートリアル 关于DataGridView控件通过dataset直接更新数据库

关于DataGridView控件通过dataset直接更新数据库

Jun 07, 2016 pm 03:06 PM
datagridview dataset について コントロール 合格

今天做了一个小功能,对一个数据库表中的信息直接进行增、删、改操作,用到了DataGridView控件。 功能描述:窗体加载时,查询出表中的内容,并绑定到DataGridView中显示。可以对表中的数据进行增/删、改操作。 开始用到了比较麻烦的方法,为DataGridView添加

今天做了一个小功能,对一个数据库表中的信息直接进行增、删、改操作,用到了DataGridView控件。
功能描述:窗体加载时,查询出表中的内容,并绑定到DataGridView中显示。可以对表中的数据进行增/删、改操作。
  开始用到了比较麻烦的方法,为DataGridView添加了contextMenuStrip,提供了三种方法。比较麻烦。下面是一部分代码:

1 privatevoid 删除ToolStripMenuItem_Click(object sender, EventArgs e)
2 {
3 int[] row =newint[dataGridView1.SelectedRows.Count]; //存储选定的行的索引号
4  int[] id =newint[dataGridView1.SelectedRows.Count]; //存储选定行的id号 用于删除时查询的条件
5  int count = dataGridView1.SelectedRows.Count; //存储开始选定了的行数
6  for (int j =0; j dataGridView1.SelectedRows.Count; j++) //利用循环将选定的行索引存入row【】数组中
7   {
8 row[j] = dataGridView1.SelectedRows[j].Index;
9 }
10 for (int i =0; i count; i++) //利用循环
11 {
12
13 dataGridView1.CurrentCell = dataGridView1[0, row[i]]; //设置当前活动的单元格的索引是【0,row【i】】,即所有选定行的第一列的值(Att_Id)
14 id[i] =Convert.ToInt32(dataGridView1.CurrentCell.Value);
15
16 }
17 bool yesno=false;
18 if (MessageBox.Show("确定要删除吗","删除确认",MessageBoxButtons.OKCancel,MessageBoxIcon.Question) == DialogResult.OK)
19 {
20 for (int s =0; s count; s++)
21 {
22 string sql ="Delete from Attributes where Att_Id=@att_id";
23 SqlParameter[] p =new SqlParameter[]{
24 new SqlParameter("@att_id",SqlDbType.Int)};
25 p[0].Value = id[s];
26 int val = (int)sqlhelper.delete(sql, p);
27 if (val >0)
28 {
29 yesno =true;
30 }
31 else
32 {
33 yesno =false;
34 break;
35 }
36
37 }
38 if (yesno ==true)
39 {
40 MessageBox.Show("删除成功!");
41 }
42 databind();
43 }
44 else
45 {
46
47 }
48 }

上面仅仅是删除这一项功能。所以非常麻烦!!

    于是,想到了另一种比较简单而且很直观的方法,利用SqlDataAdapter的update方法,直接在DataGridView中进行编辑(添加新数据、更改数据),只需给删除功能另加个按钮或者弹出菜单,datagridview1.Rows.RemoveAt(dataGridView1.CurrentRow.Index)删除选中行,有一点每种不足就是没删除一条就要点击一下按钮,而第一种方法可以一次性删除多条数据。

关于DataGridView控件通过dataset直接更新数据库关于DataGridView控件通过dataset直接更新数据库View Code

1 privatevoid leixing_Load(object sender, EventArgs e)
2 {
3
4 sqlhelper.conn.Open();
5
6 da =new SqlDataAdapter("Select Class_Id as '编号',Class_Type as '商品类型' from Class", sqlhelper.conn);
7 dt =new DataSet();
8 da.Fill(dt, "info");
9 dataGridView1.DataSource = dt.Tables[0];
10 //dataGridView1.DataMember = "info";
11 dataGridView1.Columns[0].Width =130;
12
13
14 sqlhelper.conn.Close();
15
16 }

再添加一个按钮叫做“保存更新” 代码:

这样就实现了全部功能。比较简单。

关于DataGridView控件通过dataset直接更新数据库关于DataGridView控件通过dataset直接更新数据库View Code

1 privatevoid baocun_Click(object sender, EventArgs e)
2 {
3
4
5 if (dt.HasChanges())
6 {
7 SqlCommandBuilder scmb =new SqlCommandBuilder(da);
8 da.Update(dt.Tables[0]);
9 dt.AcceptChanges();
10 }
11
12
13
14 }

这样做的前提是,数据表必须设定主键。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Go 言語 Web 開発フレームワークの一般的なリッチ テキスト エディター コントロール Go 言語 Web 開発フレームワークの一般的なリッチ テキスト エディター コントロール Jun 04, 2023 am 09:10 AM

Web アプリケーションの人気に伴い、リッチ テキスト エディターは Web 開発に不可欠なツールになりました。 Web 開発に Go 言語を使用する場合、Web サイトやアプリケーションを充実させるために、適切なリッチ テキスト エディター コントロールを選択する必要もあります。この記事では、Go 言語の Web 開発における一般的なリッチ テキスト エディター コントロールについて説明します。 FroalaEditorFroalaEditor は、Web 開発で広く使用されている人気のリッチ テキスト エディター コントロールです。現代性がある

Excelコントロールの作り方 Excelコントロールの作り方 Mar 20, 2024 am 09:40 AM

Excel オフィス ソフトウェアを使用する場合、いくつかのコントロールを上手に使用できれば、Excel フォームでよりプロフェッショナルな効果を生み出すことができます。たとえば、選択コントロールを追加すると、フォーム入力者がフォームを簡単に入力できるようになります。以下では、Excel の選択コントロールの作成方法を説明します。 1. まず、空の Excel テーブルを作成して開きます。 2. 「開発ツール」タブを追加し、左上のファイルボタンをクリックして、「Excel オプション」を見つけます。その後、カスタムリボンのオプションで開発ツールを見つけて、チェックマークが付くようにチェックします。その前に現れます。 3. Excel の作業インターフェイスに戻ると、[開発ツール] タブが表示されます。

一般的な Ajax コントロールは何ですか?その特徴と機能の詳細をご覧ください 一般的な Ajax コントロールは何ですか?その特徴と機能の詳細をご覧ください Jan 17, 2024 am 11:11 AM

Ajax コントロールの深い理解: 一般的なものは何ですか?はじめに: 最新の Web 開発では、Web ページの部分的な更新を実現し、ユーザー エクスペリエンスを向上できる Ajax (非同期 JavaScript および XML) が一般的なテクノロジになっています。開発では、通常、開発プロセスを簡素化し、スピードアップするために Ajax コントロールを使用します。この記事では、Ajax コントロールについて詳しく説明し、いくつかの一般的なコントロールとその機能を紹介します。 1. jQueryAjax: jQueryA

パネルコントロールの使い方 パネルコントロールの使い方 Oct 10, 2023 am 09:36 AM

パネル コントロールを使用する手順は、最初にパネル コントロールを作成し、その幅、高さ、背景色、境界線の色、境界線の幅とパディングを設定し、2 つのボタンを作成してパネル コントロールに追加し、最後にパネル コントロールを追加します。フォーム。

ColorOS15インターフェースが公開されました このマシンに関しては、ここが大きな変更点です。 ColorOS15インターフェースが公開されました このマシンに関しては、ここが大きな変更点です。 Aug 28, 2024 pm 03:31 PM

最近、ColorOS15 が内部ベータテストを開始し、一部のネットユーザーが関連インターフェイスを公開しました。上の写真でわかるように、一部のネットユーザーはアップグレード後の OPPO Find X7 の「このマシンについて」インターフェイスを投稿しました。 ColorOS15Betaでは、上部のパターンに大きな変更が加えられ、下半分の構成情報も以前の2列から1列の垂直分布に変更されました。添付されているのは、Huawei、Honor、Xiaomi、OPPO、vivo、Meizu の 6 つのブランドの携帯電話の最新バージョンの「この電話/携帯電話について」インターフェイスです。ColorOS 15 に関して、どのレイアウトが気に入っているか教えてください。以前のニュースでは、LivePhoto ライブ写真を広範囲にサポートすることに加えて、「AirDrop&

重要な Web 標準コントロールを明らかにする: インターフェイス要素の詳細な分析 重要な Web 標準コントロールを明らかにする: インターフェイス要素の詳細な分析 Jan 13, 2024 pm 12:19 PM

Web 標準コントロールの公開: 重要なインターフェイス要素の分析 はじめに: Web 標準コントロールは、Web デザインに不可欠な部分であり、ユーザーに豊かなインタラクティブなエクスペリエンスとフレンドリーなインターフェイスを提供し、重要な役割を果たします。この記事では、読者のためにいくつかの重要な Web 標準コントロールを明らかにし、その機能と使用方法を分析します。 1. ボタン コントロール ボタン コントロールは、Web インターフェイス設計において最も一般的かつ基本的な要素の 1 つであり、特定の操作をトリガーするために使用されます。通常、次の属性があります。 テキスト コンテンツ: ボタンに表示されるテキスト情報。スタイル

コントロールとは何ですか コントロールとは何ですか Oct 28, 2022 pm 03:51 PM

コントロールはデータとメソッドのカプセル化を指します。コントロールは独自のプロパティとメソッドを持つことができます。プロパティはコントロール データへの単純な訪問者であり、メソッドはコントロールの単純で目に見える機能です。コントロールの作成プロセスには、設計、開発、およびデバッグ ; コントロールを作成する最大の意義は、繰り返しの作業をカプセル化することであり、次に、既存のコントロールの機能を拡張することです。

システムの再インストール時の環境検出の問題を解決する システムの再インストール時の環境検出の問題を解決する Jan 08, 2024 pm 03:33 PM

システム再インストール時に環境テストに失敗し、書き換えが必要になる場合の解決方法:携帯電話が汚染されているため、ウイルス対策として Mobile Manager などのウイルス対策ソフトをインストールしてください 2. ジャンクが多いファイルは携帯電話内に保存されるため、携帯電話の実行メモリが占​​有されます。この問題を解決するには、電話機のキャッシュをクリアするだけです。3. 保存されたソフトウェアやファイルによって電話機のメモリが占​​有されすぎています。不要なファイルやソフトウェアを頻繁に削除しても問題ありません。ハードウェア構成がインストール要件を満たしている限り、次のことが可能です。新しいものを直接使用してください。システム ディスクからシステムを再インストールしてください。 USB フラッシュ ドライブまたはハードディスクを使用してインストールでき、非常に高速です。ただし、重要なのは、互換性の良いシステム ディスク (IDE、ACHI、および RAID モードでのインストールをサポート) を使用することであり、自動的かつ永続的にアクティブ化できることが検証されています。それで

See all articles