1.估计这个任务需要多长时间
5~6天
2.需求分析
作业一个排球教练,我希望知道每个队员的技术得分情况,以便后期对队员的训练。
3.设计文档
教练通过查询知道每个队员的技术得分情况
4.设计复审
将编写的程序进行复审
5.代码规范
6.具体设计
活动图:
7.具体编码
代码:
private void dgv(string sql = "select * from VolleyBaller")
{ dataGridView1.DataSource = SqlHelper.ExecuteDataTable(sql); } private void comb() { comboBox1.Items.Clear(); comboBox1.Items.Add("请选择要查询的队员"); string sql = "select name from VolleyBaller"; using(SqlDataReader reader=SqlHelper.ExecuteReader(sql)) { if (reader.HasRows) { while (reader.Read()) { comboBox1.Items.Add(reader[0]); } } } }//单击事件
private void button1_Click(object sender, EventArgs e)
{ string name = comboBox1.Text.Trim(); StringBuilder sql=new StringBuilder("select * from VolleyBaller where 1=1"); if(!string.IsNullOrEmpty(name)) { sql.Append(" and name like '%" + name + "%'"); } dgv(sql.ToString()); } }sqlhelper类
//执行返回一张表
public static DataTable ExecuteDataTable(string sql, params SqlParameter[] pams)
{ DataTable dt = new DataTable();using (SqlDataAdapter adapter = new SqlDataAdapter(sql, constr))
{ if (pams != null) { adapter.SelectCommand.Parameters.AddRange(pams); } adapter.Fill(dt); } return dt; }}
//执行返回单个值
Public static object ExecuteScalar(string sql, params SqlParameter[] pams)
{using (SqlConnection conn = new SqlConnection(constr))
{ using (SqlCommand comm = new SqlCommand(sql, conn)) { if (pams != null) { comm.Parameters.AddRange(pams); } conn.Open(); return comm.ExecuteScalar(); } } }运行界面
运行结果
8.事后总结
对于这个任务基本的已经实现,但是没有用具体的三层架构实现,后期打算用三层架构实现,并且准备增加一些新的功能