文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>数据集和数据库的同步-DataAdapter的使用

数据集和数据库的同步-DataAdapter的使用

时间:2010-11-12  来源:itcfj

 

        #region Web Form Designer generated code
        override protected void OnInit(EventArgs e)
        {
            //
            // CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
            //
            InitializeComponent();
            base.OnInit(e);
        }
       
        /// <summary>
        /// 设计器支持所需的方法 - 不要使用代码编辑器修改
        /// 此方法的内容。
        /// </summary>
        private void InitializeComponent()
        {   
            this.btnUpdate.Click += new System.EventHandler(this.btnUpdate_Click);
            this.Load += new System.EventHandler(this.Page_Load);

        }
        #endregion

        private void btnUpdate_Click(object sender, System.EventArgs e)
        {
            // Create the DataSet and DataAdapter
            SqlConnection myConnection = new SqlConnection( "server=(local);uid=sa;pwd=111;database=Pubs" );
            DataSet myDataSet = new DataSet();
            SqlDataAdapter myDataAdapter = new SqlDataAdapter("Select * From Authors", myConnection );
            //
            myDataAdapter.RowUpdating += new SqlRowUpdatingEventHandler(MyUpdatingHandler);
            myDataAdapter.RowUpdated += new SqlRowUpdatedEventHandler(MyUpdatedHandler);

            myDataAdapter.Fill( myDataSet, "Authors" );
            // Change value of first row
            myDataSet.Tables[ "Authors" ].Rows[ 0 ][ "au_fname" ] = "Johns";
            // Update the Database Table
            SqlCommandBuilder myBuilder = new SqlCommandBuilder( myDataAdapter );
            myDataAdapter.Update( myDataSet, "Authors" );
            dgShow.DataSource = myDataSet.Tables[0].DefaultView;
            dgShow.DataBind();
        }
        public void MyUpdatingHandler(object adapter,SqlRowUpdatingEventArgs e)
        {
            switch(e.StatementType)
            {
                case StatementType.Update:
                {
                    SqlConnection myConnection = new SqlConnection( "server=(local);uid=sa;pwd=111;database=Pubs" );
                    string strSql = "Select * From Authors where au_fname='"
                        +e.Row["au_fname",DataRowVersion.Original]+"'";
                    SqlCommand com = new SqlCommand(strSql,myConnection);
                    myConnection.Open();
                    if(com.ExecuteNonQuery()==0)
                    {
                        Response.Write("出错!有用户已经修改过数据集!");
                        e.Status = UpdateStatus.ErrorsOccurred;//报错
                    }
                    myConnection.Close();
                    break;
                }
            }
        }
        public void MyUpdatedHandler(object adapter,SqlRowUpdatedEventArgs e)
        {
            switch(e.StatementType)
            {
                case StatementType.Update:
                    if(e.Status==UpdateStatus.ErrorsOccurred)
                        e.Status = UpdateStatus.SkipCurrentRow;
                    break;
            }
        }
    }
}

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载