日期:2014-05-18 浏览次数:21510 次
/**********************************数据库操作类***************************************/
#region 获取学生名单
/// <summary>
/// 取得学生名单
/// </summary>
public SqlDataReader GetStudentList()
{
SqlConnection conn = new SqlConnection(connStr);
try
{
conn.Open();
StringBuilder sb = new StringBuilder();
sb.AppendLine("select");
sb.AppendLine(" [StudentNo],");
sb.AppendLine("[StudentName] ");
sb.AppendLine("from ");
sb.AppendLine("[Student]");
SqlCommand comm = new SqlCommand(sb.ToString(), conn);
return comm.ExecuteReader();
}
catch (Exception)
{
Console.WriteLine("数据库操作失败!");
return null;
}
}
/***************************************学员管理类*************************************/
/// <summary>
/// 查看学生名单
/// </summary>
public void ShowRosterList()
{
SqlDataReader reader = dbOperate.GetStudentList();
if (reader == null)
{
Console.WriteLine("出现异常!");
return;
}
Console.WriteLine("-------------------------------");
Console.WriteLine("学号\t姓名");
Console.WriteLine("-------------------------------");
StringBuilder sb = new StringBuilder();
//循环读取DataReader
while (reader.Read())
{
sb.AppendFormat("{0}\t{1}",reader["StudentNo"],reader["StudentName"]);
Console.WriteLine(sb);
sb.Length = 0;
}
Console.WriteLine("--------------------------------");
//关闭DataReader
reader.Close();
}
SqlConnection conn = new SqlConnection(connStr);
try
{
conn.Open();
...
return comm.ExecuteReader();
}
catch (Exception)
{
Console.WriteLine("数据库操作失败!");
return null;
}
finally
{
comm.Close();
}
}
------解决方案--------------------
一般来说 用完之后就关闭,下次再用又再打开.除非你的软件只有一个人在用,就可以不关闭了,
你可以看一下 微软的数据helper 类 使用using(){} 保证每次用完关闭的
------解决方案--------------------
using(SqlConnection conn = new SqlConnection(connStr))
{
//处理逻辑
//推荐使用using
}
------解决方案--------------------