SqlDataAdapter的方法之一Fill (DataSet dataset, String datatable)解释
一、SqlDataAdapter的方法之一Fill (DataSet dataset, String datatable)解释:
根据datatable名填充Dataset。
myda.Fill(ds, strtable);
strtable不是一个变量,是一张虚表
你通过SQL语句获得某张数据库的表之后把这些数据填充到dataset中,dataset也是张虚表,像视图一样,现在的strtable就表示你需要的数据的集合,虚表~~ 所以strtable必须打""
myda.Fill(ds, "strtable");
可以不需要strtable,直接myda.Fill(ds); 即用Fill(DataSet dataset)方法,返回值是成功添加或更新的行的数量。
二、关于DataSet的Tables参数问题
da.Fill(ds) --这里没有指定Table名
Gridview.DataSource = ds.Tables(0) --所以这里用 Tables(0)
C# 如果
da.Fill(ds ,"UserTableName")
Gridview.DataSource = ds.Tables["UserTableName"] --这里就可以用名称了
因为一个DataSet中可以放下好多个表,一般读取数据库时数据默认填入DataSet的第一个表中,其Index为0,所以这里用Tables(0),特指DataSet中的第一个DataTable。
索引值,从0开始
如:如果DataSet里有多个表集,可以通过索引访问 ;
ST_dd.Tables[0]:取ST_dd里的第一张表
ST_dd.Tables[0].Rows[0] : 取ST_dd里的第一张表里的第一行
今天遇到一个问题就是从数据库中取出的值放在dataset中,那么如何判断这个dataset中有没有表呢,有的话,这个表中有没有数据 ?
应该是下面这样判断:
if(dataset.Tables.Count==0)//表示dataset中没有表
if(dataset.Tables.Count==1&&dataset.Tables[0].Rows.Count==0)
//表示dataset中 有一个表,但这个表中没有数据
DataView表示用于排序、筛选、搜索、编辑和导航的 DataTable 的可绑定数据的自定义视图。
DataTable表示内存中数据的一个表。
SqlDataAdapter的方法之一Fill (DataSet dataset, String datatable)解释的更多相关文章
- SqlDataAdapter.Update()方法与SqlCommandBuilder(转)
用SqlDataAdapter操纵数据集时最常用到的就是Fill()与Update()方法.Fill()填充DataSet或DataTable,而Update()就是将DataSet或DataTabl ...
- C#里sqlDataAdapter.fill(DataSet,String)的用法
第二个参数 String是指定DataSet 里表的名字,例如 sqlDataAdapter.fill(DataSet,"学生表") 指定后,以后就可以这样调用这张表 DataSe ...
- .NET(C#)中的DataSet、string、DataTable等对象转换成Json
ConvertJson.cs类 using System; using System.Collections.Generic; using System.Text; using System.Data ...
- C#中的DataSet、string、DataTable、对象转换成Json的实现代码
C#中对象,字符串,dataTable.DataReader.DataSet,对象集合转换成Json字符串方法. public class ConvertJson { #region 私有方法 /// ...
- (C#)中的DataSet、string、DataTable等对象转换成Json
ConvertJson.cs类 using System; using System.Collections.Generic; using System.Text; using System.Data ...
- 解压与压缩(把dataset转为string、、 )
/// <summary> /// 压缩 解压 /// </summary> public class ZipHelper { #region 压缩解缩 /// <sum ...
- C#使用DataSet类、DataTable类、DataRow类、OleDbConnection类、OleDbDataAdapter类编写简单数据库应用
//注意:请使用VS2010打开以下的源代码. //源代码地址:http://pan.baidu.com/s/1j9WVR using System; using System.Collections ...
- LINQ to Entities 不识别方法“System.Guid Parse(System.String)”,因此该方法无法转换为存储表达式。
LINQ to Entities 不识别方法"System.Guid Parse(System.String)",因此该方法无法转换为存储表达式. linq 中不能转换类型
- 【转载】C#通过IndexOf方法获取某一列在DataTable中的索引位置
在C#中的Datatable数据变量的操作过程中,有时候需要知道某一个列名在DataTable中的索引位置信息,此时可以通过DataTable变量的Columns属性来获取到所有的列信息,然后通过Co ...
随机推荐
- OSG报警特效学习总结
方法一:粒子系统 OSG的粒子系统有自己定义好的模块,如osgParticle::ExplosionEffect(爆炸模拟):osgParticle::SmokeEffect(烟雾模拟 ...
- RobotFramework环境搭建
环境搭建 1. 准备条件 python-2.7.7 https://www.python.org/download/releases/2.7.7/ wxPython2.8-win32-unicode- ...
- web.config中<customErrors>节点
错误提示: “/”应用程序中的服务器错误.------------------------------------------------------------------------------- ...
- 蓝牙1.1、蓝牙1.2、蓝牙2.0(蓝牙2.0+EDR)区别
蓝牙1.2版本相对于1.1版本: 1.Adaptive Frequency Hopping(AFH):即所谓适应性跳频技术,主要的功能是用来减少蓝牙产品与其它无线通讯装置之间所产生的干扰问题 2.Ex ...
- openssl编译(VC6.0)
官网:http://www.openssl.org/ 得到源码: git clone https://github.com/openssl/openssl 一.用vc编译器编译: 1.下载nasm: ...
- 柯南君:看大数据时代下的IT架构(8)消息队列之RabbitMQ--案例(topic起航)
二.Topic(主题) (using the Java client) 上一篇文章中,我们进步改良了我们的日志系统.我们使用direct类型转发器,使得接收者有能力进行选择性的接收日志,,而非fano ...
- 《windows程序设计》学习_4:文本输出,加滚动条
//总行数 #define NUMLINES ((int) (sizeof sysmetrics / sizeof sysmetrics [0])) struct { int Index ; TCHA ...
- dijkstra 优先队列最短路模板
;;*maxn];,):id(a),dist(b){} )); ;i<=n;i++)dist[i]=inf; dist[st]=; ;i= ...
- mysql的查询缓存
查询是数据库技术中最常用的操作.查询操作的过程比较简单,首先从客户端发出查询的SQL语句,数据库服务端在接收到由客户端发来的 SQL语句后, 执行这条SQL语句,然后将查询到的结果返回给客户端 ...
- 【原】浅谈Firefox下的js、css、图片阻塞现象(一)
外部js文件阻塞body中的图片 以如下html为例: <!DOCTYPE HTML> <html> <head> <meta http-equiv=&quo ...