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

ASP
使用FSO自动创建多级文件夹的函数
专家教你利用思易ASP木马追捕入侵站点
技巧:用 isapi rewrite 实现asp的HTML静态化
使用ASP建设私人的搜索引擎
巧用SQL-DMO创建备份及校验的ASP应用
技巧:用GetString来提高ASP的速度
ASP实现的日历代码实例程序
WEB应用的缓存兼容性设计
用网站地图帮助搜索引擎
IIS虚拟主机网站防木马权限设置安全配置整理
ASP把长的数字用逗号隔开显示
所谓新云XSS跨站漏洞全公布
ASP技巧:禁用页面缓存的五种方法
ASP中实现从dbf数据库导出数据到sql表
简单熟悉掌握ASP的语法和变量
让弹出窗口变得“听话”一些
运用ASP调用数据库中视图及存储过程
瞄准Apache IIS7向开源张开双臂
ASP实现IE地址栏参数的判断
如何让你的ASP运行于非Windows平台

亲密接触ASP.Net(10)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 35 ::
收藏到网摘: 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的,没有操作数据库,