以下的增删改查是管理员界面的,在一个界面里就全部完成了。学生界面我准备用弹框方式做(就是选择查询,弹出来一个框那种),本来这个也应该做弹框的,但是都做完了我才想起来,所以我就没改,准备做学生界面的时候再弄(说白了还是懒)
依旧是先排版,这里就不多说了。
然后设置增删改查操作,具体见下边代码及注释。
检测增删改查语句正确与否,增加断点,运行。
在代码部分找到相关语句,鼠标移动过去就会出现语句
点这个小放大镜就会出现可视化工具
(ps:我在界面的文本框放反了,年龄的放到专业下边去了。会弹出框提示添加不成功)
改正后,添加成功⬇
删除⬇
修改⬇
修改信息时,只能修改第一次输入的学号,改为Close就可以了。
con.Dispose():释放内存里的con,并没有断开连接
con.Close():断开连接
我设置了文本框不为空时修改,可以一次修改多个属性。
但是出现了新BUG:不可以修改属性为空。没想出来咋解决,只能先输入0和null代替。
查询⬇
在基础上,增加了多条件查询的功能。设置flag变量代表单条件和多条件,多条件时sql语句的字符串上加And(代码在最后
返回⬇
点返回按钮回到初始操作界面。
代码:清空文本框内容并且查询显示全表
源代码:(只放了操作的代码,一开始那一堆乱七八糟的没放
//************************关闭***********************
private void button5_Click(object sender, EventArgs e) //关闭
{
this.Close();
}
//*****************************删除*****************************
private void button2_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=STUDENT;Persist Security Info=True;User ID=sa;Password=tangdou"); //定义
try
{
con.Open(); //打开
string select_id = dataGridView1.SelectedRows[0].Cells[0].Value.ToString();//选择的当前行第一列的值,也就是ID
string delete_by_id = "delete from Student where Sno=" + select_id;//sql删除语句
SqlCommand cmd = new SqlCommand(delete_by_id, con); //使用
cmd.ExecuteNonQuery();
}
catch
{
MessageBox.Show("请正确选择行!");
}
finally
{
con.Dispose(); //释放
}
this.studentTableAdapter.Fill(this.sTUDENTDataSet1.Student);
}
//***************************增添*************************
private void button1_Click(object sender, EventArgs e)
{
String StuID = textBox1.Text.Trim();
String StuName = textBox2.Text.Trim();
String StuSe