当前位置:Gxlcms > 数据库问题 > C#窗体连接MySql并通过DataGridView展示数据

C#窗体连接MySql并通过DataGridView展示数据

时间:2021-07-01 10:21:17 帮助过:13人阅读

MySql.Data.MySqlClient;

 

 

这样我们就可以使用MySql.Data中的方法来连接数据库了,连接数据库代码如下:

  1. <span style="color: #000000;">
  2. String connetStr </span>= <span style="color: #800000;">"</span><span style="color: #800000;">server=127.0.0.1;port=3306;user=root;password=123; database=vs;</span><span style="color: #800000;">"</span><span style="color: #000000;">;
  3. </span><span style="color: #008000;">//usr:用户名,password:数据库密码,database:数据库名</span>
  4. MySqlConnection conn = <span style="color: #0000ff;">new</span><span style="color: #000000;"> MySqlConnection(connetStr);
  5. </span><span style="color: #0000ff;">try</span><span style="color: #000000;">
  6. {
  7. conn.Open();</span><span style="color: #008000;">//</span><span style="color: #008000;">打开通道,建立连接,可能出现异常,使用try catch语句</span>
  8. Console.WriteLine(<span style="color: #800000;">"</span><span style="color: #800000;">已经建立连接</span><span style="color: #800000;">"</span><span style="color: #000000;">);
  9. </span><span style="color: #000000;">
  10. }
  11. </span><span style="color: #0000ff;">catch</span><span style="color: #000000;"> (MySqlException ex)
  12. {
  13. Console.WriteLine(ex.Message);
  14. }
  15. </span><span style="color: #0000ff;">finally</span><span style="color: #000000;">
  16. {
  17. conn.Close();
  18. }</span>

如果连接数据库成功,我们就可以进行下面的操作了,取出数据并通过DataGridView展示出来了,代码如下:

  1. <span style="color: #000000;">
  2. String connetStr </span>= <span style="color: #800000;">"</span><span style="color: #800000;">server=127.0.0.1;port=3306;user=root;password=123; database=vs;</span><span style="color: #800000;">"</span><span style="color: #000000;">;
  3. </span>
  4. MySqlConnection conn = <span style="color: #0000ff;">new</span><span style="color: #000000;"> MySqlConnection(connetStr);
  5. </span><span style="color: #0000ff;">try</span><span style="color: #000000;">
  6. {
  7. conn.Open();</span><span style="color: #008000;">//</span><span style="color: #008000;">打开通道,建立连接,可能出现异常,使用try catch语句</span>
  8. Console.WriteLine(<span style="color: #800000;">"</span><span style="color: #800000;">已经建立连接</span><span style="color: #800000;">"</span><span style="color: #000000;">);<br></span>
  9. <span style="color: #0000ff;">string</span> sql = <span style="color: #800000;">"</span><span style="color: #800000;">select * from salecar</span><span style="color: #800000;">"</span><span style="color: #000000;">;
  10. MySqlCommand cmd </span>= <span style="color: #0000ff;">new</span><span style="color: #000000;"> MySqlCommand(sql, conn);
  11. MySqlDataReader reader </span>= cmd.ExecuteReader();<span style="color: #008000;">//</span><span style="color: #008000;">执行ExecuteReader()返回一个MySqlDataReader对象</span>
  12. <span style="color: #0000ff;">while</span> (reader.Read())
  13. <span style="color: #000000;"> {
  14. </span><span style="color: #0000ff;">int</span> index = <span style="color: #0000ff;">this</span><span style="color: #000000;">.dataGridView1.Rows.Add();
  15. </span><span style="color: #0000ff;">this</span>.dataGridView1.Rows[index].Cells[<span style="color: #800080;">0</span>].Value = reader.GetString(<span style="color: #800000;">"</span><span style="color: #800000;">name</span><span style="color: #800000;">"</span><span style="color: #000000;">);
  16. </span><span style="color: #0000ff;">this</span>.dataGridView1.Rows[index].Cells[<span style="color: #800080;">1</span>].Value = reader.GetString(<span style="color: #800000;">"</span><span style="color: #800000;">describe</span><span style="color: #800000;">"</span><span style="color: #000000;">);
  17. </span><span style="color: #0000ff;">this</span>.dataGridView1.Rows[index].Cells[<span style="color: #800080;">2</span>].Value = reader.GetString(<span style="color: #800000;">"</span><span style="color: #800000;">price</span><span style="color: #800000;">"</span><span style="color: #000000;">);
  18. </span><span style="color: #0000ff;">this</span>.dataGridView1.Rows[index].Cells[<span style="color: #800080;">3</span>].Value = reader.GetInt32(<span style="color: #800000;">"</span><span style="color: #800000;">salenumber</span><span style="color: #800000;">"</span><span style="color: #000000;">);
  19. }
  20. }
  21. </span><span style="color: #0000ff;">catch</span><span style="color: #000000;"> (MySqlException ex)
  22. {
  23. Console.WriteLine(ex.Message);
  24. }
  25. </span><span style="color: #0000ff;">finally</span><span style="color: #000000;">
  26. {
  27. conn.Close();
  28. }</span>

这样我们就完成了C#窗体连接MySql并通过DataGridView展示数据,下面是效果图和全部代码:

全部代码:

  1. <span style="color: #0000ff;">using</span><span style="color: #000000;"> System;
  2. </span><span style="color: #0000ff;">using</span><span style="color: #000000;"> System.Collections.Generic;
  3. </span><span style="color: #0000ff;">using</span><span style="color: #000000;"> System.ComponentModel;
  4. </span><span style="color: #0000ff;">using</span><span style="color: #000000;"> System.Data;
  5. </span><span style="color: #0000ff;">using</span><span style="color: #000000;"> System.Drawing;
  6. </span><span style="color: #0000ff;">using</span><span style="color: #000000;"> System.Linq;
  7. </span><span style="color: #0000ff;">using</span><span style="color: #000000;"> System.Text;
  8. </span><span style="color: #0000ff;">using</span><span style="color: #000000;"> System.Threading.Tasks;
  9. </span><span style="color: #0000ff;">using</span><span style="color: #000000;"> System.Windows.Forms;
  10. </span><span style="color: #0000ff;">using</span><span style="color: #000000;"> MySql.Data.MySqlClient;
  11. </span><span style="color: #0000ff;">namespace</span><span style="color: #000000;"> WindowsFormsApp1
  12. {
  13. </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">partial</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> Form3 : Form
  14. {
  15. </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> Form3()
  16. {
  17. InitializeComponent();
  18. a();
  19. }
  20. </span><span style="color: #0000ff;">private</span> <span style="color: #0000ff;">void</span> button1_Click(<span style="color: #0000ff;">object</span><span style="color: #000000;"> sender, EventArgs e)
  21. {
  22. Form1 fm1 </span>= <span style="color: #0000ff;">new</span><span style="color: #000000;"> Form1();
  23. </span><span style="color: #0000ff;">this</span><span style="color: #000000;">.Hide();
  24. fm1.ShowDialog();
  25. Application.ExitThread();
  26. }
  27. </span><span style="color: #0000ff;">private</span> <span style="color: #0000ff;">void</span> dataGridView1_CellContentClick(<span style="color: #0000ff;">object</span><span style="color: #000000;"> sender, DataGridViewCellEventArgs e)
  28. {
  29. }
  30. </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> a()
  31. {
  32. String connetStr </span>= <span style="color: #800000;">"</span><span style="color: #800000;">server=127.0.0.1;port=3306;user=root;password=123; database=vs;</span><span style="color: #800000;">"</span><span style="color: #000000;">;</span>
  33. MySqlConnection conn = <span style="color: #0000ff;">new</span><span style="color: #000000;"> MySqlConnection(connetStr);
  34. </span><span style="color: #0000ff;">try</span><span style="color: #000000;">
  35. {
  36. conn.Open();</span><span style="color: #008000;">//</span><span style="color: #008000;">打开通道,建立连接,可能出现异常,使用try catch语句</span>
  37. Console.WriteLine(<span style="color: #800000;">"</span><span style="color: #800000;">已经建立连接</span><span style="color: #800000;">"</span><span style="color: #000000;">);
  38. </span><span style="color: #008000;">//</span><span style="color: #008000;">在这里使用代码对数据库进行增删查改</span>
  39. <span style="color: #0000ff;">string</span> sql = <span style="color: #800000;">"</span><span style="color: #800000;">select * from salecar</span><span style="color: #800000;">"</span><span style="color: #000000;">;
  40. MySqlCommand cmd </span>= <span style="color: #0000ff;">new</span><span style="color: #000000;"> MySqlCommand(sql, conn);
  41. MySqlDataReader reader </span>= cmd.ExecuteReader();<span style="color: #008000;">//</span><span style="color: #008000;">执行ExecuteReader()返回一个MySqlDataReader对象</span>
  42. <span style="color: #0000ff;">while</span> (reader.Read())
  43. <span style="color: #000000;"> {
  44. </span><span style="color: #0000ff;">int</span> index = <span style="color: #0000ff;">this</span><span style="color: #000000;">.dataGridView1.Rows.Add();
  45. </span><span style="color: #0000ff;">this</span>.dataGridView1.Rows[index].Cells[<span style="color: #800080;">0</span>].Value = reader.GetString(<span style="color: #800000;">"</span><span style="color: #800000;">name</span><span style="color: #800000;">"</span><span style="color: #000000;">);
  46. </span><span style="color: #0000ff;">this</span>.dataGridView1.Rows[index].Cells[<span style="color: #800080;">1</span>].Value = reader.GetString(<span style="color: #800000;">"</span><span style="color: #800000;">describe</span><span style="color: #800000;">"</span><span style="color: #000000;">);
  47. </span><span style="color: #0000ff;">this</span>.dataGridView1.Rows[index].Cells[<span style="color: #800080;">2</span>].Value = reader.GetString(<span style="color: #800000;">"</span><span style="color: #800000;">price</span><span style="color: #800000;">"</span><span style="color: #000000;">);
  48. </span><span style="color: #0000ff;">this</span>.dataGridView1.Rows[index].Cells[<span style="color: #800080;">3</span>].Value = reader.GetInt32(<span style="color: #800000;">"</span><span style="color: #800000;">salenumber</span><span style="color: #800000;">"</span><span style="color: #000000;">);
  49. }
  50. }
  51. </span><span style="color: #0000ff;">catch</span><span style="color: #000000;"> (MySqlException ex)
  52. {
  53. Console.WriteLine(ex.Message);
  54. }
  55. </span><span style="color: #0000ff;">finally</span><span style="color: #000000;">
  56. {
  57. conn.Close();
  58. }
  59. }
  60. }
  61. }</span>

效果:
技术图片

 

 数据库表:

技术图片

C#窗体连接MySql并通过DataGridView展示数据

标签:span   task   ide   没有   展示   show   mes   win   ini   

人气教程排行