一、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)解释的更多相关文章

  1. SqlDataAdapter.Update()方法与SqlCommandBuilder(转)

    用SqlDataAdapter操纵数据集时最常用到的就是Fill()与Update()方法.Fill()填充DataSet或DataTable,而Update()就是将DataSet或DataTabl ...

  2. C#里sqlDataAdapter.fill(DataSet,String)的用法

    第二个参数 String是指定DataSet 里表的名字,例如 sqlDataAdapter.fill(DataSet,"学生表") 指定后,以后就可以这样调用这张表 DataSe ...

  3. .NET(C#)中的DataSet、string、DataTable等对象转换成Json

    ConvertJson.cs类 using System; using System.Collections.Generic; using System.Text; using System.Data ...

  4. C#中的DataSet、string、DataTable、对象转换成Json的实现代码

    C#中对象,字符串,dataTable.DataReader.DataSet,对象集合转换成Json字符串方法. public class ConvertJson { #region 私有方法 /// ...

  5. (C#)中的DataSet、string、DataTable等对象转换成Json

    ConvertJson.cs类 using System; using System.Collections.Generic; using System.Text; using System.Data ...

  6. 解压与压缩(把dataset转为string、、 )

    /// <summary> /// 压缩 解压 /// </summary> public class ZipHelper { #region 压缩解缩 /// <sum ...

  7. C#使用DataSet类、DataTable类、DataRow类、OleDbConnection类、OleDbDataAdapter类编写简单数据库应用

    //注意:请使用VS2010打开以下的源代码. //源代码地址:http://pan.baidu.com/s/1j9WVR using System; using System.Collections ...

  8. LINQ to Entities 不识别方法“System.Guid Parse(System.String)”,因此该方法无法转换为存储表达式。

    LINQ to Entities 不识别方法"System.Guid Parse(System.String)",因此该方法无法转换为存储表达式. linq 中不能转换类型

  9. 【转载】C#通过IndexOf方法获取某一列在DataTable中的索引位置

    在C#中的Datatable数据变量的操作过程中,有时候需要知道某一个列名在DataTable中的索引位置信息,此时可以通过DataTable变量的Columns属性来获取到所有的列信息,然后通过Co ...

随机推荐

  1. c语言 选择排序

    选择排序 //    int array[] = {3, 2, 6, 9, 8, 5, 7, 1, 4}; //    int count = sizeof(array) / sizeof(array ...

  2. 6. java.lang.IllegalArgumentException

    方法的参数错误 比如g.setColor(int red,int green,int blue)这个方法中的三个值,如果有超过255的也会出现这个异常,因此一旦发现这个异常,我们要做的,就是赶紧去检查 ...

  3. 5.java.lang.IndexOutOfBoundsException(数组下标越界异常)

    数组下标越界异常 查看调用的数组或者字符串的下标值是不是超出了数组的范围,一般来说,显示(即直接用常数当下标)调用不太容易出这样的错,但隐式(即用变量表示下标)调用就经常出错了,还有一种情况,是程序中 ...

  4. Oracle EBS-SQL (SYS-9):职责使用菜单.sql

    select aa.menu_name, aa.user_menu_name, aa.type,                 aa.description, aa.ENTRY_SEQUENCE, ...

  5. delphi 7中使用idhttp抓取网页 解决假死现象

    在delphi 7中使用idhttp抓取网页,造成窗口无反应的假死状态.通过搜索获得两种方法. 1.写在线程中,但是调用比较麻烦 2.使用delphi 提供的idantifreeze(必须安装indy ...

  6. rsyslog 定义模板

    rsyslog默认会将特殊字符(\t)转换成#009 由全局配置$EscapeControlCharactersOnReceive 决定,如果自己需要根据\t处理输出时,需将该选项改为 off. $E ...

  7. Twitter模块开发

    Twitter模块开发 关于Twitter这一块,自发这篇博文之后有很多人问我,有的验证成功了不跳转,或者其它原因什么的 =======我看了一下,这篇博文里面有写呀,下面以红色粗体文字注明一下 Tw ...

  8. #include <memory>

    1 auto_ptr 2 unique_ptr 1 auto_ptr C++的auto_ptr所做的事情,就是动态分配对象以及当对象不再需要时自动执行清理. 使用std::auto_ptr,要#inc ...

  9. python 【第四篇】:面向对象(一)

    1.前言 提笔忘字,感慨良多!python自习前前后后有一年多了吧,貌似花了不少时间,其实没学到啥东西,都是在面向对象编程之前基础知识这块一直打转转,每次到了面向对象这块就感觉很蒙,看两天直接放弃,从 ...

  10. python SyntaxError: Non-ASCII character '\xd5' in file

    我使用的是python2.7, 在pycharm想运行程序,但是却报出了SyntaxError: Non-ASCII character '\xd5' in file 原因是因为源码中包含了中文注释, ...