续(这个例子是针对ACCESS的更新、删除、还有定位的,希望能对你有所帮助)

access

            // btn_help
            //
            this.btn_help.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
            this.btn_help.Location = new System.Drawing.Point(360, 280);
            this.btn_help.Name = "btn_help";
            this.btn_help.Size = new System.Drawing.Size(88, 24);
            this.btn_help.TabIndex = 3;
            this.btn_help.Text = "帮 助(&h)";
            this.btn_help.Click += new System.EventHandler(this.btn_help_Click);
            //
            // label5
            //
            this.label5.BackColor = System.Drawing.Color.Olive;
            this.label5.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
            this.label5.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
            this.label5.Location = new System.Drawing.Point(48, 192);
            this.label5.Name = "label5";
            this.label5.Size = new System.Drawing.Size(152, 24);
            this.label5.TabIndex = 1;
            this.label5.Text = "市场价格:";
            this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
            //
            // txt_bookstock
            //
            this.txt_bookstock.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
            this.txt_bookstock.Location = new System.Drawing.Point(232, 240);
            this.txt_bookstock.Name = "txt_bookstock";
            this.txt_bookstock.Size = new System.Drawing.Size(216, 21);
            this.txt_bookstock.TabIndex = 2;
            this.txt_bookstock.Text = "";
            //
            // dataedit
            //
            this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
            this.AutoScroll = true;
            this.BackColor = System.Drawing.Color.Olive;
            this.ClientSize = new System.Drawing.Size(536, 389);
            this.Controls.AddRange(new System.Windows.Forms.Control[] {
                                                                          this.statusBar,
                                                                          this.btn_help,
                                                                          this.txt_BookId,
                                                                          this.label2,
                                                                          this.label1,
                                                                          this.label3,
                                                                          this.label4,
                                                                          this.label5,
                                                                          this.label6,
                                                                          this.txt_BookName,
                                                                          this.txt_AuthorName,
                                                                          this.txt_bookprice,
                                                                          this.txt_bookstock,
                                                                          this.btn_Delete,
                                                                          this.btn_update,
                                                                          this.btn_movenext,
                                                                          this.btn_movefirst,
                                                                          this.btn_moveprevious,
                                                                          this.btn_movelast});
            this.Name = "dataedit";
            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
            this.Text = "dataedit";
            this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
            this.ResumeLayout(false);

        }
        #endregion

        private void MovePrevious()
        {
            if (myBind.Position == 0)
            {
                statusBar.Text = "数据已经到头";
            }
            else
            {
                myBind.Position -= 1;
                statusBar.Text = "当前位置:" +myBind.Position.ToString();
            }
        }

        private void MoveFirst()
        {
            myBind.Position = 0;
            statusBar.Text = "当前位置:" +myBind.Position.ToString();
        }

        private void MoveNext()
        {
            if (myBind.Position == myBind.Count-1)
            {
                statusBar.Text = "数据已经到尾";
            }
            else
            {
                myBind.Position += 1;
                statusBar.Text = "当前位置:" +myBind.Position.ToString();
            }
        }

        private void MoveLast()
        {
            myBind.Position = myBind.Count-1;
            statusBar.Text = "当前位置:" +myBind.Position.ToString();
        }

        private void btn_movefirst_Click(object sender, System.EventArgs e)
        {
            MoveFirst();
        }

        private void btn_moveprevious_Click(object sender, System.EventArgs e)
        {
            MovePrevious();
        }

        private void btn_movenext_Click(object sender, System.EventArgs e)
        {
            MoveNext();
        }

        private void btn_movelast_Click(object sender, System.EventArgs e)
        {
            MoveLast();
        }

        private void btn_help_Click(object sender, System.EventArgs e)
        {
            MessageBox.Show("数据库操作练习——定位、更新、删除",System.DateTime.Now.ToShortDateString());
        }

        private void btn_Delete_Click(object sender, System.EventArgs e)
        {
            try
            {
                string strconn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=book.mdb";
                OleDbConnection conn = new OleDbConnection(strconn);
                
                conn.Open();
                string strdelete = "select * from bookstock";
                OleDbDataAdapter adapter = new OleDbDataAdapter(strdelete,conn);

                myDataSet.Tables["bookstock"].Rows[myBind.Position].Delete();
                adapter.Update(myDataSet,"bookstock");

                statusBar.Text = "记录已经删除";
                conn.Close();
            }
            catch(Exception ed)
            {
                statusBar.Text = "发生错误,原因:" + ed.Message;
                MessageBox.Show(ed.ToString());
            }
        }

        private void btn_update_Click(object sender, System.EventArgs e)
        {
            try
            {
                string strconn = "Provider=Microsoft.Jet.OlEDB.4.0;Data Source=book.mdb";
                OleDbConnection conn = new OleDbConnection(strconn);

                conn.Open();

                string strupdt = "update bookstock set booktitle = '"
                    + txt_BookName.Text + "',bookauthor = '"
                    + txt_AuthorName.Text + "',bookprice = "
                    + txt_bookprice.Text +",bookstock = "
                    + txt_bookstock.Text +" Where bookid = " + txt_BookId.Text;
                OleDbCommand comm = new OleDbCommand(strupdt,conn);
                comm.ExecuteNonQuery();

                statusBar.Text = "更新成功!";
                conn.Close();

                myDataSet = null;
                myBind = null;

                if(isbound)
                {
                    txt_BookId.DataBindings.Clear();
                    txt_BookName.DataBindings.Clear();
                    txt_AuthorName.DataBindings.Clear();
                    txt_bookprice.DataBindings.Clear();
                    txt_bookstock.DataBindings.Clear();
                    isbound = false;
                }

                GetConnected();
            }
            catch(Exception eu)
            {
                statusBar.Text = "发生错误,原因:" + eu.Message;
            }
        }
    }
}

时间: 2024-09-08 09:56:57

续(这个例子是针对ACCESS的更新、删除、还有定位的,希望能对你有所帮助)的相关文章

Access不能更新,数据库或对象为只读

本文章来给大家介绍Access不能更新,数据库或对象为只读的解决办法. 在访问页面里出现如下错误: Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Access Driver] 不能更新.数据库或对象为只读. 解决方法: 设置对应的Access数据库文件对网站匿名访问用户有写的权限即可.

SEO规则频繁更新下 站长未来的希望在哪里

SEO规则频繁更新下 站长未来的希望在哪里 百度从今年5月份的规则调整开始直至当下,站长朋友已经经历了数次沉重的打击,面对百度一次又一次无情的大规模K站,很多站长朋友已经渐渐的丧失了信心.难道中国站长的"2012"真的到来了?柯达公司原来是全球最大的胶卷生产企业,但是最后的命运却是已破产收场.诺基亚相比我们每一个人都非常清楚,曾经作为全球销量最大的手机巨头,而如今确是惨淡至极,是什么让曾经如此辉煌的企业有了如今的境地?我们不妨来分析一下,首先这俩个企业都有一个共同点,那就是被胜利冲灰了

数据-用sql语句在access中如何删除自动编号的那一行

问题描述 用sql语句在access中如何删除自动编号的那一行 今天又遇到了一个新问题:我尝试着用sql语句删除access中自动编号的一行,可是出错了,提示我数据类型不匹配.请问我应该怎么改写sql语句? String id=request.getParameter("ID");//从上个页面获取的ID int index=Integer.parseInt(id);//将id转换成字符串类型 . . String sql = "delete from tb_poll whe

mysql 多表关联更新/删除sql语句

1.mysql 多表关联delete中使用别名,tblwenhq是真实的表名,a是tblwenhq的别名,b是另一个表名  代码如下 复制代码 DELETE  a FROM tblwenhq a,b where a.id=b.id 2.使用mysql进行delete from操作时,若子查询的 FROM 字句和更新/删除对象使用同一张表,会出现错误. DELETE FROM tab1 WHERE col1 = ( SELECT MAX( col1 ) FROM tab1 ); ERROR 109

Asp下Access无法更新的解决方法_应用技巧

在windows+iis服务器上运行asp程序可能会出现数据库无法更新的情况,具体错误信息可能为: 1.Microsoft JET Database Engine (0x80040E09) 不能更新.数据库或对象为只读 2.Microsoft OLE DB Provider for ODBC Drivers (0x80004005)[Microsoft][ODBC Microsoft Access Driver] 操作必须使用一个可更新的查询. 3.Microsoft JET Database

Asp下Access无法更新的解决方法

在windows+iis服务器上运行asp程序可能会出现数据库无法更新的情况,具体错误信息可能为: 1.Microsoft JET Database Engine (0x80040E09) 不能更新.数据库或对象为只读 2.Microsoft OLE DB Provider for ODBC Drivers (0x80004005)[Microsoft][ODBC Microsoft Access Driver] 操作必须使用一个可更新的查询. 3.Microsoft JET Database

百度收录躁动是针对Google PR更新的又一次公关

从本月24日开始,百度的收录情况就进入到了非常明显的波动期,高潮出现在26号前后,笔者的论坛收录从8800一跃升到35500大关!更有一些站长朋友的收录实现了16倍的增长,从3升多暴涨到近5万!当然,还有一些网站的收录一落千丈!无论是哪种情况,都有些走向了极端.事实上,在查到网站收录的暴增之后,短暂的惊喜过后我只剩下担心,这种"一夜暴富"式的增长在我看来并不稳定,因为它不是正常发展的一个结果.还有我的一些客户网站被百度收录疯狂减半之后,于今天终于恢复到正常水平,这些都无不说明了百度的收

一张表有且只有一条记录(续) - 支持插入,并且查询、更新、删除只作用在最后一条记录上

标签 PostgreSQL , 有且只有一条记录 背景 之前写过一篇文档,介绍如何控制某张表有且只有一条记录. <如何实现一张表有且只有一条记录 implement PostgreSQL table have one and only one row> 接下来这个需求与之类似,一张表好像有且只有一条记录,要求这样: 1.支持插入.更新.删除.查询操作, 2.有一个时间字段用来区分这条记录是什么时候插入.更新的. 3.更新只作用在最后一条记录(时间最大的那条)上, 4.查询只返回时间最大的一条记

用VB生成DLL封装ASP代码一个例子:连接access数据库等

access|封装|数据|数据库 封装为dll会带来很多的好处,主要包括只是产权的保护,以及效率和安全性能的提升.这个例子中被封装的dll文件可以隐藏access数据库的实际路径. VB生成的DLL封装ASP代码来连接数据库(Access). 本文用一个最简单的连接access数据库的例子来说明如何将asp代码封装为dll文件. 我们用vb,最常见的方式来封装asp代码. 我们需要封装的对象如下: 'Proconn.aspdim ProConnset ProConn=Server.CreateO