浅谈ASP.net中的DataSet对象
在我们对数据库进行操作的时候,总是先把数据从数据库取出来,然后放到一个"容器"中,再通过这个"容器"取出数据显示在前台,而充当这种容器的角色中当属DataSet是最为普遍和重要的了,可以说DataSet在数据库和前台中起到了一个桥梁的作用。
下面就来谈谈DataSet的用法。(DataSet对象本身是没有存取数据库的能力的,它要与DataAdapter一般是配合使用的,而关于DataAdapter的用法在我的另一篇文章中有介绍,大家可以看一下)
DataSet可以包含多个数据表,可以在程序中动态地产生数据表,而这里的数据表可来自数据库,文件或者XML(前面已经讲过XML的用法了,不是很了解的话可以去看一下)。而DataSet提供了对数据进行浏览,编辑,排序,过滤和建立视图的方法。
DataSet采用非连接的传输模式访问数据库,即在将用户所请求的数据读入DataSet后,与数据库的链接就关闭了,这样其他用户可以继续使用数据源。
在我用DataSet这么久以来,不光是会用那些关于DataSet的固定语句,其实认识到DataSet的结构才是最为关键的。下面就是DataSet对象的结构:
DataSet对象的属性和方法:
DataSetName 获取或设置DataSet对象的名称
Tables
获取数据集的数据表集合(DataTableCollection),DataSet对象的所有DataTable对象都属于DataTableCollection
最常用的属性就是Tables,通过该属性,可以获得或设置数据表行,列的值。
例如,表达式"DS.Tables["ShoppingCart"].rows(i).Item(j)"表示访问ShoppingCart表的第i行第j列。
最常用的方法是Clear()和Copy().Clear方法是清除DataSet对象的数据,删除所有DataTable对象。Copy方法复制DataSet对象的结构和数据,返回值是与本DataSet对象具有相同的结构和数据的DataSet对象。
简单的例子:(没有前台代码,只有后台跟DataSet有关的部分代码,不过之后我会上传这个的案例,大家有兴趣的可以看看)
- protected void Page_Load(object sender,EventArgs e)
- {
- 链接数据库的sqlconnection暂时先省略
- SqlDataAdapter sqlad = new SqlDataAdapter(sql,con); //创建SqlDataAdapter对象并执行sql查询
- DataSet ds = new DataSet(); //创建数据集
- sqlad.Fill(ds); //填充数据集
- GridView1.DataSource=ds.Tables[0].DefaultView; //设置数据源
- GridView1.DataBind(); //绑定数据源
- }
浅谈ASP.net中的DataSet对象相关推荐
- 浅谈ASP.NET中render方法
2011-06-08 11:36 runyl 博客园 我要评论(1) 字号:T | T Control.Render 方法是将服务器控件内容发送到提供的HtmlTextWriter 对象,此对象编写将 ...
- 浅谈一下javascript中的this对象
this是什么? this关键字是函数运行时自动生成的一个内部对象,也被称作为环境对象,只能在函数内部使用.谁'调用'this,this就指向谁.打个比方来说:this就相当于中文中的"我& ...
- 浅谈asp木马中自定义函数加密的解密
现在市面上流传了N种asp的大马.就是常说的webshell.有什么全免杀版本,什么提权加强版本.但是其中很多shell都是加密的,而且存在一些后门. 很有可能同学了忙了半天入侵了一个站,是为别人忙活 ...
- asp.net mvc 压缩html代码,浅谈ASP.NET中MVC 4 的JS/CSS打包压缩功能
今天在使用MVC4打包压缩功能@Scripts.Render("~/bundles/jquery") 的时候产生了一些疑惑,问什么在App_Start文件夹下BundleConfi ...
- 浅谈ASP.NET的内部机制(一)
浅谈ASP.NET的内部机制(一) 前言:当一个Http请求发送给一个aspx页面时,服务器进行了哪些操作?又如何来解析这个请求?ASP.NET在接收请求后是怎么运行的,如怎么编译以及怎么样用托管的代 ...
- 浅谈V8引擎中的垃圾回收机制
浅谈V8引擎中的垃圾回收机制 这篇文章的所有内容均来自 朴灵的<深入浅出Node.js>及A tour of V8:Garbage Collection,后者还有中文翻译版V8 之旅: 垃 ...
- 浅谈ASP.NET的内部机制(二)
浅谈ASP.NET的内部机制(二) 前言:大家知不知道,一个Http Request是如何被传递给ASP.NET的?而且ASP.NET是如何知道一个 Http Request是请求的. ...
- 浅谈导航数据中POI搜索技术原理
浅谈导航数据中POI搜索技术原理之一 王健 导航技术的应用已经成为现在生活中重要组成部分,为我们的生活提供了极大的便利.基本都有这样生活的体验,搜索自己位置附近的银行网点.餐馆.那么这些POI是如何快 ...
- 嵌入式AI —— 6. 为糖葫芦加糖,浅谈深度学习中的数据增广
没有读过本系列前几期文章的朋友,需要先回顾下已发表的文章: 开篇大吉 集成AI模块到系统中 模型的部署 CMSIS-NN介绍 从穿糖葫芦到织深度神经网络 又和大家见面了,上次本程序猿介绍了CMSIS- ...
最新文章
- 查阅arXiv论文新神器,一行代码比较版本差别,Github新开源!
- 关于Viual Studio 改变编辑器背景背景及背景图片
- vue 2个方法先后执行_演讲你早该知道的2个演讲方法
- HWS计划 decryption 寒假逆向生涯(17/100)
- ADB server didn't ACK
- 2019年低延迟直播技术展望
- CF思维联系--CodeForces - 218C E - Ice Skating (并查集)
- oracle卸数什么是ctrl文件,Oracle数据库的安装和卸载之道
- python在线包安装mysql_python安装mysql的依赖包mysql-python操作
- 非root用户安装nginx
- 大众mpv_最便宜的大众MPV来啦!1.4T6AT,空间比宝骏730还宽裕
- JQuery所有版本及说明文档
- 李宏毅深度学习HW2 收入预测 (logistic regression)
- WIN7桌面IE图标删除
- 3D游戏建模怎么接外包
- java 实现异地登陆_Java实现用户异地登陆踢人操作
- java教学视频毕向东_集合3--毕向东java基础教程视频学习笔记
- 计算机网络的特点及性能
- 美颜SDK是什么意思?美颜SDK可以用在哪些地方?
- COVID-19检测方法汇总