C# 实现数据库连接

Git仓库 https://github.com/mostimacc/-.git

实验目标:

1、请设计一个项目连接到自己的MySQL数据库,数据库包含至少三张表;
2、使用dataGridView控件显示表中的数据;
3、实现基本crud操作。

实验过程:

 界面设计

 

首先,在下方空格中输入数据库中的所需使用的表名。

再单击“开始连接”,使程序能够打开数据库,从而执行基本crud操作。

 private void button1_Click(object sender, EventArgs e)
        {
            builder.UserID = "root";
            builder.Password = "20010915";
            builder.Server = "localhost";
            builder.Database = "test01";
            connection = new MySqlConnection(builder.ConnectionString);
            connection.Open();
        }

 查询的实现:

 string sql = "select * from " + textBox5.Text;
            MySqlCommand cmd = new MySqlCommand(sql, connection);
            MySqlDataReader reader = cmd.ExecuteReader();

            //设置dataGridView的列
            dataGridView1.ColumnCount = 5;
            dataGridView1.ColumnHeadersVisible = true;

            dataGridView1.Columns[0].Name = "Sno";
            dataGridView1.Columns[1].Name = "Sname";
            dataGridView1.Columns[2].Name = "Ssex";
            dataGridView1.Columns[2].Name = "Sage";
            dataGridView1.Columns[2].Name = "Sdept";

            //根据查询结果像DataGridView中添加数据行
            while (reader.Read())
            {
                int index = this.dataGridView1.Rows.Add();
                this.dataGridView1.Rows[index].Cells[0].Value = reader.GetString("Sno");
                this.dataGridView1.Rows[index].Cells[1].Value = reader.GetString("Sname");
                this.dataGridView1.Rows[index].Cells[2].Value = reader.GetString("Ssex");
                this.dataGridView1.Rows[index].Cells[3].Value = reader.GetString("Sage");
                this.dataGridView1.Rows[index].Cells[4].Value = reader.GetString("Sdept");
            }
            //保证每次操作后,关闭连接。
            connection.Close();     

 

 

 

修改的实现:

 string sql = textBox5.Text;
            MySqlCommand cmd = new MySqlCommand(sql, connection);
            cmd.ExecuteNonQuery();

connection.Close();

 

 

 

插入的实现:

 string sql = textBox5.Text;
            MySqlCommand cmd = new MySqlCommand(sql, connection);
            cmd.ExecuteNonQuery();

connection.Close();

 

 

  
删除的实现
 string sql = textBox5.Text;
            MySqlCommand cmd = new MySqlCommand(sql, connection);
            cmd.ExecuteNonQuery();

connection.Close();

 

 

 

 

 

 

实验总结:
  本次实验一开始按照老师所发的教程来安装MySQL连接的相关插件,在实操过程中,发现部分插件不支持vs 2022的最新版本,仅支持2017/2019的版本,在网上也并未找到有关的解决办法。后来,重新安装了2019版本,完成了实验。

  在实验中,一开始没有合理使用数据库的关闭功能,导致运行出现了问题,对表进行二次操作之后会导致程序无法正常退出。查询之后才知道是因为没有及时关闭数据库连接导致的。所以为了避免该情况出现,我在每次操作后都添加了该语句,能够保证每次自动关闭连接。

实验中也有一些小问题,比如输入的SQL语句没注意到变量的类型是字符型,而忘记了添加引号。


 

posted @ 2022-05-27 19:47  ava群青  阅读(1254)  评论(0)    收藏  举报