当前位置: 首页 > 图文教程 > 网络编程 > ASP > 亲密接触ASP.Net(10)

ASP
ASP正则表达式技巧
ASP Access实现网站计数器(访问量)
ASP新闻分页,将一篇过长的文章分页,生成静态页面
一些关于asp 购物车的想法
一个sql查询器,自动画表格填字段
ASP实现文件直接下载的代码
把网页中的(电话,qq等数字)生成图片的ASP程序
asp长文章用分页符来分页显示
Asp函数介紹(37个常用函数)
ASP中的面向对象类
分页实现方法的性能比较
asp ajax跨域提交数据
asp修改文件和文件夹的名字的代码
ASP 多关键词查询实例代码
asp被杀毒软件误删的解决方法
asp 多关键词搜索的简单实现方法
asp 根据IP地址自动判断转向分站的代码
asp dictionary对象的用法
ASP 千万级数据分页的存储过程
ASP隐藏真实文件的下载功能实现代码

亲密接触ASP.Net(10)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 58 ::
收藏到网摘: n/a

       接上一节,我们这一节主要计论如何使用DataSet,在数据库中增加、修改、删除一个数据。
  
  首先我们需要打开一个联结,我们的数据库还是用上一节的吧:)
  
  string MyConnString = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:/test/test.mdb;";
  string strComm = "select * from UserList";
  ADOConnection MyConnection = new ADOConnection(MyConnString);
  ADODataSetCommand MyComm = new ADODataSetCommand(strComm,MyConnection);
  
  这里我们为了讲解方便,只在DataSet存入一个表的内容:
  
  DataSet MyDataSet = new DataSet();
  MyComm.FillDataSet(MyDataSet,"UserList");
  
  此时我们就获得了一个拥有UserList表数据的DataSet。在讲解DataSet之前,我们还需要了解DataSet的结构下面是DataSet的结构树
  
  DataSet
  RelationsCollection
  ExtendedProperties
  TablesCollection  
  DataTables
   
  Rows
  Columns
  其它
  由于我们研究的是DataTable,其它的我们暂时不管他们。一个DataSet中包含多个DataTable,一个DataTable又包含有多个Row,这就是我们操作DataSet的基础啦:)
  
  添加数据
  
  添加一数据,从上面的列表中我们可以看出,其实就是添加一行Row,这里我们也来演示一下如何添加一行数据,我们程序一切以DataSet为顶点,呵呵,如果TablesCollection,RowsCollection下去的话,还有一些烦人的dt.AcceptChanges这些方法的调用,很烦人,还是一次搞定吧。
  
  DataRow dr=MyDataSet.Tables["UserList"].NewRow();
  dr["UserName"] = "周讯";
  dr["ReMark"] = "100";
  dr["Comment"] = "漂亮MM";
  MyDataSet.Tables.Rows.Add(dr);
  
  第一行,我们建立一个新的数据行,它用来储存我们新加入的数据。然后我们在这个数据行中加入我们需要的数据。dr["UserName"]表明是对UserName字段进行添加,你可以使用dr[1]来添加信息,但是这需要我们事先知道字段在数据表的位置,而且在不知道数据表结构的情况很难知道我们添加的数据的对应情况,所以还是用字段名为好。
  
  最后我们使用RowsCollection的Add方法,将我们新建这一行加入到数据表中。
  
  修改数据
  
  知道如何添加数据后,修改数据也是很简单的事情了.
  
  MyDataSet.Tables["UserList"].Rows[0]["UserName"]="飞刀大哥";
  
  这样我们就修改了第一行数据中的UserName字段。
  
  删除数据
  
  删除数据,主要是使用RowsCollection提供的Delete方法,看下面的程序也是很简单的事情啦:)
  
  MyDataSet.Tables["UserList"],Rows[0].Delete();
  
  这一行数据就已经被删除了。
  
  恢复数据
  
  有时候我们添加/修改数据会出现错误,这时候,就需要恢复原来的数据。下面的程序,显示如何判断是否有错误发生:
  
  if(MyDataSet.HasErrors)
  {
  MyDataSet.RejectChanges();
  }
   
  
  首先我们检查DataSet中是否有错误发生,如果有就使用RejectChanges()方法,恢复DataSet中的数据。注意这里恢复是在DataSet中所有表以及表中DataRow中的数据,也就是在此交次操作的数据全部恢复。如果我们只需要恢复部分内容,我们可以使用DataTable或DataRow的RejectChanges(),这里就不详细讲解了,使用方法和DataSet一样,只是操作的对像不同而已。
  
  探测DataSet是否有改动
  
  我们在将DataSet送交给数据库去保存去,我们需要看看这个DataSet是否已经被改动了。如果没有改动,我们也就没有必要去修改数据库了。
  
  if(MyDataSet.HasChanges)
  {
   //保存
  }else{
   //不进行任何操作
  }
  
  更新数据库
  
  我们上面的操作,都只是针对DataSet的,没有操作数据库,