add a while loop outsidewhile (true)
{
   //...
  try
  {
   ///...
  if(sql.ToLower() == "exit")
  {
     return;
  }
 }
  catch(..)
  {
  //....
  }
}

解决方案 »

  1.   

    在执行命令的那段加个try,这样一来连接就不会中断了
    try
    {
    SqlDataReader myReader = myComm.ExecuteReader();
    Console.WriteLine("执行成功,影响 {0} 行",myReader.RecordsAffected);
    if(myReader.RecordsAffected == -1)
    {
    for(int i=0; i<myReader.FieldCount; i++)
    {
    Console.Write("{0}\t",myReader.GetName(i));
    }
    Console.WriteLine();
    while(myReader.Read())
    {
    for(int j=0; j<myReader.FieldCount; j++)
    {
    string ColsName = myReader.GetName(j);
    Console.Write("{0}\t",myReader[ColsName]);
    }
    Console.WriteLine();
    }
    }

    myReader.Close();
    }
    catch
    {
    Console.WriteLine("执行失败");
    };