create
![v2-ef07ac3529d6d30825dde476110be6ea_b.jpg](http://img-03.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-ef07ac3529d6d30825dde476110be6ea_b.jpg)
![v2-a6126d83633f780e13a81f2cfd601e81_b.jpg](http://img-02.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-a6126d83633f780e13a81f2cfd601e81_b.jpg)
![v2-1de298904361612636f31f21f524eac1_b.jpg](http://img-02.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-1de298904361612636f31f21f524eac1_b.jpg)
![v2-21a65f21541e9282aac14eda8319e509_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-21a65f21541e9282aac14eda8319e509_b.jpg)
首先建好数据库备用。
我们现在进行一个学生管理系统的设计。
拥有登录,增加学生信息,删除学生信息,查询学生信息(模糊查询),修改学生信息功能的一个窗体。
首先打开vs
![v2-9c24e20ec2cb94949b03d25542caa0b1_b.jpg](http://img-03.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-9c24e20ec2cb94949b03d25542caa0b1_b.jpg)
![v2-6bdf3f3a2f2ae387c399581127ec3b30_b.jpg](http://img-03.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic1.zhimg.com/v2-6bdf3f3a2f2ae387c399581127ec3b30_b.jpg)
DBHelper类代码如下
这是一个简化版本的DBHelper类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;//导入命名空间1
using System.Data.SqlClient;//导入命名空间2
namespace 学生管理系统
{
class DBHelper
{
public static DataTable Find(string sql)//查询的方法
{
//创建连接字符串,比方说,去寻宝,找到了藏宝图
string constr = "server=.;uid=sa;pwd=123456;database=studentDB";
//创建连接对象,相当于找到宝藏
SqlConnection con = new SqlConnection(constr);
//创建适配器,sql语句和连接对象传给他
SqlDataAdapter adapter = new SqlDataAdapter(sql,con);
//创建一个数据表
DataTable dt = new DataTable();
//将数据表填充进适配器
adapter.Fill(dt);
//返回数据表的值
return dt;
}
public static bool Execute(string sql)//增删改的方法
//增删改,返回bool,用于f判断是否有影响行数,即判断,是否执行成功
{
//创建连接字符串,比方说,去寻宝,找到了藏宝图
string constr = "server=.;uid=sa;pwd=123456;database=studentDB";
//创建连接对象,相当于找到宝藏
SqlConnection con = new SqlConnection(constr);
//打开连接对象
con.Open();
//创建一个数据命令,传入sql语句和连接对象
SqlCommand cmd = new SqlCommand(sql, con);
//定义一个结果接收数据命令影响的行数
int count = cmd.ExecuteNonQuery();
//关闭数据连接
con.Close();
//返回
return count > 0;
}
}
}
完成DBHelper类的建立之后
现在可以进行对窗体的创建了
![v2-21a65f21541e9282aac14eda8319e509_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-21a65f21541e9282aac14eda8319e509_b.jpg)
1.登录窗体
![v2-25ebb3a830f39493590f1ec4a0d3fb5c_b.jpg](http://img-03.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic1.zhimg.com/v2-25ebb3a830f39493590f1ec4a0d3fb5c_b.jpg)
这是一个利用姓名和生日进行的一个账号密码的登录验证
怎么实现呢,我这边用的是一个查询语句
这是登录按钮,button按钮内的代码
要注意的是,find方法那里,是把一张表装换成了查询一行。
![v2-a6db84b855c570118967104b53369b3a_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-a6db84b855c570118967104b53369b3a_b.jpg)
![v2-21a65f21541e9282aac14eda8319e509_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-21a65f21541e9282aac14eda8319e509_b.jpg)
2.添加学生信息
![v2-36750189a4ca36a566a289effe8f5a38_b.jpg](http://img-02.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic1.zhimg.com/v2-36750189a4ca36a566a289effe8f5a38_b.jpg)
这段代码,SQL语句那里容易出错。
总的意思就是,用sql语句把这些数据插入到数据库。
![v2-5b98ff533439c0c27e56e36f73b15ae8_b.jpg](http://img-03.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic1.zhimg.com/v2-5b98ff533439c0c27e56e36f73b15ae8_b.jpg)
![v2-21a65f21541e9282aac14eda8319e509_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-21a65f21541e9282aac14eda8319e509_b.jpg)
3.查询界面
![v2-c0e90cb5697717f41dcb7237e1e90836_b.jpg](http://img-02.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-c0e90cb5697717f41dcb7237e1e90836_b.jpg)
这个界面,首先在它的加载时间loft事件里写一个查询的语句
![v2-2904ffccabdc5bb0db6f70267f079be2_b.jpg](http://img-02.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-2904ffccabdc5bb0db6f70267f079be2_b.jpg)
我把窗口三设置成了父窗体,然后窗口四是窗口三的子窗体
然后登录窗体四的时候,就可以直接有查询的表格。
再设置一个有条件的查询
就是上面那个添加的按钮,字打错了,见谅。
![v2-a8f06e435c800b4587a7aa5e75f24e15_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-a8f06e435c800b4587a7aa5e75f24e15_b.jpg)
做完这些之后,就可以按名字模糊查询信息了。
![v2-21a65f21541e9282aac14eda8319e509_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-21a65f21541e9282aac14eda8319e509_b.jpg)
4.修改
![v2-38c1485c770b9b80db8371d623dfcf86_b.jpg](http://img-02.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-38c1485c770b9b80db8371d623dfcf86_b.jpg)
看到最下面的学号姓名吗。
就是用来显示一整行。
![v2-715d27ceb3f45be812368a7b4ea51c82_b.jpg](http://img-02.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-715d27ceb3f45be812368a7b4ea51c82_b.jpg)
![v2-d046c70adfd8fea4f52cde2ec3838dea_b.jpg](http://img-02.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-d046c70adfd8fea4f52cde2ec3838dea_b.jpg)
设置好之后,就是这样的效果。
![v2-f3112c5e1d4bcb3275233ce37565f0a3_b.jpg](http://img-02.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic4.zhimg.com/v2-f3112c5e1d4bcb3275233ce37565f0a3_b.jpg)
把要修改的修改好,点击保存,按下保存
![v2-a4bd8760fd516e17ee4a138d3f092dc3_b.jpg](http://img-02.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic4.zhimg.com/v2-a4bd8760fd516e17ee4a138d3f092dc3_b.jpg)
![v2-21a65f21541e9282aac14eda8319e509_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-21a65f21541e9282aac14eda8319e509_b.jpg)
5.删除信息
![v2-ceb688e2a967e4ea27795d51cbc30bfd_b.jpg](http://img-02.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-ceb688e2a967e4ea27795d51cbc30bfd_b.jpg)
我设计了两个删除,一个是右键删除,还有一个是按钮删除,今天太晚了,就讲一下按钮删除吧。
![v2-c7fe8ec7123894e55706803371a07f93_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=f6a94c86-3d2a-eb11-8da9-e4434bdf6706&url=https://pic4.zhimg.com/v2-c7fe8ec7123894e55706803371a07f93_b.jpg)
太困,睡觉了。
晚安。
有问题私信。