老师让写一个图书管理,编辑公共变量后,写到第三个窗体调试的时候开始出现这个问题,然后进度就卡在这个图书更新位置,应该怎么改?
class DataAccess
    {
        private static string ConnectString = "Data Source=localhost;InitialCatalog=Book;Integrated Security=true";
        /// <summary>
        /// 根据表名获取数据集的表
        /// </summary>
        /// <param name="table"></param>
        /// <returns></returns>
        public static DataTable GetDataSetByTableName(string table)
        {
            using (SqlConnection con = new SqlConnection(ConnectString))
            {
                string sql = "select*from" + table + "";
                try
                {
                    SqlDataAdapter adapter = new SqlDataAdapter(sql, con);
                    DataSet ds = new DataSet();
                    adapter.Fill(ds, "table");
                    return ds.Tables[0];
                }
                catch (SqlException ex)
                {
                    //异常处理
                    throw new Exception(ex.Message);
                }
            }
        }
        /// <summary>
        /// 根据SQL语句获取数据对象
        /// </summary>
        /// <param name="sql"</param>
        /// <returns></returns>
        public static DataTable GetDataSetBySql(string sql)
        {
            using (SqlConnection con = new SqlConnection(ConnectString))
            //创建数据库连接对象
            {
                SqlDataAdapter adapter = new SqlDataAdapter(sql,con);//创建适配器对象
                DataSet ds = new DataSet();//创建数据收集对象
                try
                {
                    adapter.Fill(ds);//填充数据集
                    return ds.Tables[0];//返回数据集                }
                catch (SqlException ex)
                {
                    throw new Exception(ex.Message);
                }
            }
        }
        ///<summary>
        ///根据id值获取DataReader对象
        ///</summary>
        ///<param name="id"</param>
        /// <returns></returns>
        public static SqlDataReader GetDataReaderByID(int id)
        {
            using (SqlConnection con = new SqlConnection(ConnectString))
            {
                string sql = "slecet*from bookinfo where bookid=" + id;//Sql语句
                try
                {
                    SqlCommand comm = new SqlCommand(sql, con);//创建Command对象
                    con.Open();//打开链接
                    SqlDataReader reader = comm.ExecuteReader();//创建DataReader对象
                    reader.Read();//读取数据
                    return reader;//返回DataReader                }
                catch (SqlException ex)
                {
                    throw new Exception(ex.Message);
                }
            }        }
        ///<summary>
        ///更新数据
        ///</summary>
        ///<param name="sql"></param>
        ///<returns></returns>
        public static bool UpdataDataTable(string sql)
        {
            using (SqlConnection con = new SqlConnection(ConnectString))
            {
                try
                {
                    con.Open();//打开链接
                    SqlCommand comm = new SqlCommand(sql, con);//创建Commons对象
                    if (comm.ExecuteNonQuery() > 0)//执行更新
                    {
                        return true;
                    }
                    else
                    {
                        return false;
                    }
                }
                catch (SqlException ex)
                {
                    throw new Exception(ex.Message);
                }
            }        }
        ///<summary>
        ///根据数据集和SQL语句更新数据库
        ///</summary>
        ///<param name="ds"</param>
        ///<param name="sql"</param>
        public static void UpdateDataSet(DataSet ds, string sql)
        {
            using (SqlConnection con = new SqlConnection(ConnectString))
            {
                try
                {
                    SqlDataAdapter adapter = new SqlDataAdapter(sql, con);//创建适配器
                    SqlCommandBuilder builder = new SqlCommandBuilder(adapter);//根据适配器自动生成表单
                    adapter.Update(ds, "table");
                }
                catch (SqlException ex)
                {
                    throw new Exception(ex.Message);
                }
            }
        }
    }