用VisualC#来修改和删除数据库.doc

上传人:鲁** 文档编号:556827104 上传时间:2023-09-10 格式:DOC 页数:9 大小:46.51KB
返回 下载 相关 举报
用VisualC#来修改和删除数据库.doc_第1页
第1页 / 共9页
用VisualC#来修改和删除数据库.doc_第2页
第2页 / 共9页
用VisualC#来修改和删除数据库.doc_第3页
第3页 / 共9页
用VisualC#来修改和删除数据库.doc_第4页
第4页 / 共9页
用VisualC#来修改和删除数据库.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《用VisualC#来修改和删除数据库.doc》由会员分享,可在线阅读,更多相关《用VisualC#来修改和删除数据库.doc(9页珍藏版)》请在金锄头文库上搜索。

1、在以前的一篇文章Visual C中轻松浏览数据库记录中,我们介绍了用Visual C#如何把数据表中的字段值绑定到文本框的属性上和如何操作数据记录指针,随意浏览数据表中的记录。本文就接着上一篇的内容,来介绍用Visual C#如何来修改和删除数据记录。 一.程序设计和运行的环境设置: (1).视窗2000服务器版 (2).Microsoft Access Data Component 2.6 以上版本 ( MADC 2.6 ) (3).本文程序使用的数据库的介绍: 为了方便起见,在选用数据库方面选用了本地数据库Access 2000,当然你也可以选用其他类型的数据库,只需要更改文章后面的程序源

2、代码中数据库的引擎,并更改对应的代码就可以了。本程序中使用的数据库名称为sample.mdb,在此数据库中有一张数据表books。此数据表的结构如下: 字段名称 字段类型 代表意思 Bookid 数字 序号 booktitle 文本 书籍名称 bookauthor 文本 书籍作者 bookprice 数字 价格 bookstock 数字 书架号 二.程序设计难点和应该注意的问题: 在程序设计中的重点和难点就是如何用Visual C#删除记录和如何修改记录。下面就这二个问题进行必要的论述: (1).如何用Visual C#正确删除数据表中的记录: 在用Visual C#删除记录的时候要注意的是:

3、必须从二个方面彻底删除记录,即从数据库和用Visual C#编程时产生的一个DataSet对象中彻底删除。在程序设计的时候,如果只是删除了DataSet对象中的记录信息,这种删除是一种伪删除。这是因为当他退出程序,又重新运行程序,会发现,那个要删除的记录依然还存在。这是因为DataSet对象只是对数据表的一个镜像,并不是真正的记录本身。但如果只是从数据库中删除记录,因为我们此时程序用到的数据集合是从DataSet对象中读取的,子DataSet对象中依然保存此条记录的镜像。所以就会发现,我们根本没有删除掉记录,但实际上已经删除了。此时只有退出程序,重新运行,才会发现记录已经删除了。本文使用的方法

4、是删除以上二个方面的记录或记录镜像信息。当然你也可以使用其他的方法,譬如:首先从数据库中删除记录,然后重新建立数据连接,重新创建一个新的DataSet对象。这种方法虽然也可以达到相同目的,但显然相对繁杂些,所以本文采用的是第一种方法-直接删除。在程序中具体的实现语句如下: /连接到一个数据库 string strCon = Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = sample.mdb ; OleDbConnection myConn = new OleDbConnection ( strCon ) ; myConn.Open ( )

5、 ; string strDele = DELETE FROM books WHERE bookid= + t_bookid.Text ; OleDbCommand myCommand = new OleDbCommand ( strDele , myConn ) ; /从数据库中删除指定记录 myCommand.ExecuteNonQuery ( ) ; /从DataSet中删除指定记录信息 myDataSet.Tables books . Rows myBind.Position . Delete ( ) ; myDataSet.Tables books . AcceptChanges (

6、 ) ; myConn.Close ( ) ; (2).用Visual C#来修改数据表中的记录: 在用Visual C#修改记录和删除记录,在程序设计中大致差不多,具体的实现方式也是通过SQL语句调用来实现的。下面就是在程序中修改记录的具体语句: /连接到一个数据库 string strCon = Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = sample.mdb ; OleDbConnection myConn = new OleDbConnection ( strCon ) ; myConn.Open ( ) ; /从数据库中修改指

7、定记录 string strUpdt = UPDATE books SET booktitle = + t_booktitle.Text + , bookauthor = + t_bookauthor.Text + , bookprice = + t_bookprice.Text + , bookstock = + t_bookstock.Text + WHERE bookid = + t_bookid.Text ; OleDbCommand myCommand = new OleDbCommand ( strUpdt , myConn ) ; myCommand.ExecuteNonQuer

8、y ( ) ; myConn.Close ( ) ; (3).在了解了如何用Visual C#删除和修改记录以后,结合Visual C中轻松浏览数据库记录文的内容,就可以得到用Visual C#完成删除和修改数据记录的比较完整程序代码,以下是本文中介绍程序的运行后的程序界面: 点击小图放大,本文中程序运行后的界面 三.用Visual C#实现删除和修改数据库记录的完整源程序代码: using System ; using System.Drawing ; using System.ComponentModel ; using System.Windows.Forms ; using Syste

9、m.Data.OleDb ; using System.Data ; public class DataEdit : Form private System.ComponentModel.Container components ; private Button delete ; private Button update ; private Button lastrec ; private Button nextrec ; private Button previousrec ; private Button firstrec ; private TextBox t_bookstock ;

10、private TextBox t_bookprice ; private TextBox t_bookauthor ; private TextBox t_booktitle ; private TextBox t_bookid ; private Label l_bookstock ; private Label l_bookprice ; private Label l_bookauthor ; private Label l_booktitle ; private Label l_bookid ; private Label label1 ; private System.Data.D

11、ataSet myDataSet ; private BindingManagerBase myBind ; private bool isBound = false ; /定义此变量,是判断组件是否已经绑定数据表中的字段 public DataEdit ( ) / 对窗体中所需要的内容进行初始化 InitializeComponent ( ) ; /连接到一个数据库 GetConnected ( ) ; /清除程序中用到的所有资源 public override void Dispose ( ) base.Dispose ( ) ; components.Dispose ( ) ; publ

12、ic void GetConnected ( ) try /创建一个 OleDbConnection对象 string strCon = Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = sample.mdb ; OleDbConnection myConn = new OleDbConnection ( strCon ) ; string strCom = SELECT * FROM books ; /创建一个 DataSet对象 myDataSet = new DataSet ( ) ; myConn.Open ( ) ; OleDbDa

13、taAdapter myCommand = new OleDbDataAdapter ( strCom , myConn ) ; myCommand.Fill ( myDataSet , books ) ; myConn.Close ( ) ; /判断数据字段是否绑定到 TextBoxes if ( !isBound ) /以下是为显示数据记录而把数据表的某个字段绑定在不同的绑定到文本框Text属性上 t_bookid.DataBindings.Add ( Text , myDataSet , books.bookid ) ; t_booktitle.DataBindings.Add ( Te

14、xt , myDataSet , books.booktitle ) ; t_bookauthor.DataBindings.Add ( Text , myDataSet , books.bookauthor ) ; t_bookprice.DataBindings.Add ( Text , myDataSet , books.bookprice ) ; t_bookstock.DataBindings.Add ( Text , myDataSet , books.bookstock ) ; /设定 BindingManagerBase /把对象DataSet和books数据表绑定到此myBi

15、nd对象 myBind = this.BindingContext myDataSet , books ; isBound = true ; catch ( Exception e ) MessageBox.Show ( 连接数据库发生错误为: + e.ToString ( ) , 错误! ) ; public static void Main ( ) Application.Run ( new DataEdit ( ) ) ; private void InitializeComponent ( ) ponents = new System.ComponentModel.Container ( ) ; this.t_bookid = new TextBox ( ) ; this.previousrec = new But

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号