C# winform mysql实现学生信息管理系统
该程序主要是通过对C#窗体的DataGridView控件的单元格进行修改,实现对mysql数据库的增删查改等操作。
附上C#使用MySql.Data.MySqlClient;命名空间的方法:
编译环境:
Windows VS2019
运行效果:
开始界面
是用两个文本框中的内容去匹配数据表中内容,
匹配成功则进入操作界面。
点击蓝色的注册文字,跳转到注册界面。
----------------------------
注册界面
可通过在文本框中输入账号和密码在对应数据表中插入一个账号信息。
注册成功则重新返回登录界面。
-----------------------------
操作界面
代码将数据表中的学生信息填充到了DataGridView控件中。
可通过双击DataGridView控件的单元格,修改其中的内容,间接对数据库中信息的进行修改。
增加学生信息,只需修改界面上最后一行的单元格进行修改,即可添加。
点击删除按钮,当前所选中的单元格的一行信息,将被删除。
另外,我添加了一个文本框,可通过在文本框中输入sql语句再点击执行,对数据信息进行操作。但dql语句并不会有作用。
所有数据库中的学生信息或更改数据后显示,或手动刷新。
DataGridView控件本身提供了通过单击字段名,对数据进行排序显示的功能。
还有更多程序细节在代码中可见。
--------------------
代码:
Form1登录窗口:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data;
using MySql.Data.MySqlClient;
namespace C_sharp学生信息管理系统
{
public partial class Form1 : Form
{
MySqlConnection conn; //用于连接数据库对象 MySqlCommand cmd; //用于查询数据库对象1 MySqlDataReader DataReader; //用于查询数据库对象2 String connetStr = //连接数据库用的字符串 "server=localhost;port=3306;user=root;password=123456; database=studentsql;";
//程序入口 //窗口类构造函数 public Form1()
{
InitializeComponent(); //创建窗口 //设置窗口显示位置居中 this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
}
//封装查询数据库函数,参数为要查询的数据表 void sqlinquire(String sql)
{
//点击登录按钮时,查询数据库的账号密码表 //当文本框中的数据等于对应账号密码信息时,进入下一界面 //每次使用语句之前重新连接数据库 // server=localhost 代表本机,端口号port默认是3306可以不写, //user用户名,password密码,database要使用的数据库 conn = new MySqlConnection(connetStr);
conn.Open();
cmd = new MySqlCommand(sql, conn);
DataReader = cmd.ExecuteReader();
}
//点击登录按钮事件 private void button1_Click(object sender, EventArgs e)
{
try
{
//将账号和密码字符串与数据库中的对应字段进行匹配,匹配成功则进入管理界面 sqlinquire("select * from account");
//Read初始索引是-1,执行读取下一行数据,没有下一行返回false //通过遍历表中所有数据确定对应的关系 bool sign = false; //标记是否登录成功 while (DataReader.Read())
//如果账号和密码与数据库中account管理员账户数据表中的数据对应,则登录成功 if ((textBox1.Text == DataReader.GetString("id")) &&
(textBox2.Text == DataReader.GetStrin