首先创建数据库丨 学号 姓名 班级 QQ 微信 丨5列

三层架构,即包含 BLL,DAL,Model,DBHelper,Winform
必须 Mysql 包
using MySql.Data.MySqlClient;
请依照下列文件规范命名

首先配置WinForm下 App.config 文件(Mysql数据库连接为例)

1
2
3
4
5
6
7
8
9
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name ="NiceHanMySql" connectionString="server=数据库地址;port=端口号;user=数据库用户名;password=密码; database=数据库名;"/>
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
</startup>
</configuration>

#BLL 下 NiceBLL.cs文件代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
using DAL;
using Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BLL
{
public class NiceBLL
{
NiceDAL tableDal = new NiceDAL();
public List<NiceModel> GetTableList()
{
return tableDal.GetTablelist();
}
public String NiceFormText()
{
return "NiceHan Mysql TextDate";
}
public String SystemonLock()
{
return "NiceHanWinForm";
}
}
}

#DAL 下 NiceDAL.cs文件代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
using Models;
using SqlDbHelper;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Reflection.Emit;
using System.Text;
using System.Threading.Tasks;

namespace DAL
{
public class NiceDAL
{
public List<NiceModel> GetTablelist()
{
string sqlStr = "select * from PZ ";
DataTable sTable = NiceDB.GetDataTable(sqlStr, null);
List<NiceModel> tableList = new List<NiceModel>();
foreach (DataRow dr in sTable.Rows)
{
NiceModel tb = new NiceModel();
tb.学号 = (dr["Num"].ToString());
tb.姓名 = (dr["Name"].ToString());
tb.班级 = (dr["Class"].ToString());
tb.QQ = (dr["QQ"].ToString());
tb.微信 = (dr["Wx"].ToString());
tableList.Add(tb);
}
return tableList;
}
}
}

#Model 下 NiceModel.cs文件代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Models
{
public class NiceModel
{
public string 姓名 { set; get; }
public string 学号 { set; get; }
public string 班级 { set; get; }
public string QQ { set; get; }
public string 微信 { set; get; }
}
}

#DBhelper 下 NiceDB.cs文件代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Configuration;
using System.Data;
using MySql.Data.MySqlClient;

namespace SqlDbHelper
{
public static class NiceDB
{
private static readonly string connStr = ConfigurationManager.ConnectionStrings["NiceHanMySql"].ConnectionString;

public static int ExecuteNoneQuery(string sqlStr, params System.Data.SqlClient.SqlParameter[] pms)
{
using (MySqlConnection conn = new MySqlConnection(connStr))
{
using (MySqlCommand cmd = new MySqlCommand(sqlStr, conn))
{
if (pms != null)
{
cmd.Parameters.AddRange(pms);
}
conn.Open();
return cmd.ExecuteNonQuery();
}
}
}
public static object ExecuteScalar(string sqlStr, params MySqlParameter[] pms)
{
using (MySqlConnection conn = new MySqlConnection(connStr))
{
using (MySqlCommand cmd = new MySqlCommand(sqlStr, conn))
{
if (pms != null)
{
cmd.Parameters.AddRange(pms);
}
conn.Open();
return cmd.ExecuteScalar();
}
}
}
public static MySqlDataReader ExecuteReader(string sqlStr, params MySqlParameter[] pms)
{
using (MySqlConnection conn = new MySqlConnection(connStr))
{
using (MySqlCommand cmd = new MySqlCommand(sqlStr, conn))
{
if (pms != null)
{
cmd.Parameters.AddRange(pms);
}
try
{
conn.Open();
return cmd.ExecuteReader();
}
catch
{
conn.Close();
conn.Dispose();
throw;
}
}
}
}
public static DataTable GetDataTable(string sqlStr, params MySqlParameter[] pms)
{
using (MySqlDataAdapter adapter = new MySqlDataAdapter(sqlStr, connStr))
{
DataTable dt = new DataTable();
if (pms != null)
{
adapter.SelectCommand.Parameters.AddRange(pms);
}
adapter.Fill(dt);
return dt;
}
}
}
}

#Winform 下 NiceHanForm.cs文件代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
using BLL;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

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

private void Form2_Load(object sender, EventArgs e)
{
NiceBLL tb = new NiceBLL();
this.Text = tb.SystemonLock();
this.WinForm.Text = tb.NiceFormText();
this.dataGridView1.DataSource = tb.GetTableList();
}
}
}

恭喜你完成 运行调试即可