作业四:MYSQL数据库及C#操作MYSQL数据库——Winform程序

时间:2022-09-20 18:31:30

目标2:C#操作MySQL数据库,包括基本步骤和具体的编码实现(90分)。

 C#操作MySQL数据库。
(1)连接作业1中建立的数据库中的相关的表(table),显示在DataGridView控件中。

using System;

using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;


using MySQLDriverCS;
using System.Data.SqlClient;
using MySql.Data.MySqlClient;
using System.Data.Odbc;




namespace DataBaseConnection
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }


        private void button1_Click(object sender, EventArgs e)
        {




            try
            {


                string constr = "DRIVER={MySQL ODBC 5.2 ANSI Driver};" +


                                 "SERVER=localhost;" +


                                 "DATABASE=student;" +


                                 "UID=root;" +


                                 "PASSWORD=root;" +


                                 "OPTION=3";
                OdbcConnection conn = new OdbcConnection(constr);
           
                conn.Open();
                if (conn.State == ConnectionState.Open)
                {
                    label1.Text = "数据库已打开!";
                }
                //读取sut_info
                MySqlDataAdapter sda = new MySqlDataAdapter();//适配器
                sda = new MySqlDataAdapter("select *from stu_info","SERVER=localhost;UID=root;PASSWORD=root;DATABASE=student;");
                DataSet ds = new DataSet();//数据集
                sda.Fill(ds, "stu_info");//填充到表格
                dataGridView1.DataSource = ds.Tables["stu_info"];//设置DGV数据源
               




            }
                //捕获错误
            catch (MySqlException ex)
            {
                switch (ex.Number)
                {
                    case 0:
                        MessageBox.Show("不能连接服务器;"); break;
                    case 1045:
                        MessageBox.Show("无效用户名、密码!"); break;
                    case 1049:
                        MessageBox.Show("数据库不存在!"); break;
                    default:
                        MessageBox.Show(ex.Message); break;
                }
            }






        }
    }
}

MYSQL数据库表格:

作业四:MYSQL数据库及C#操作MYSQL数据库——Winform程序


运行结果:

作业四:MYSQL数据库及C#操作MYSQL数据库——Winform程序


心得:一开始是使用SQL SERVER数据库,后来因为SQL SERVER版本过期后重新使用MYSQL ,通过查阅资料成功连接到数据库,再将数据库的表读取到DATAGRIDVIW中。不足的地方是出现乱码,我在尝试能不能在C#里面实现不乱码,而不是在,MYSQL建表的时候实现。