这些SqlDataAdapter.Fill和DataSet.Tables中的这个参数是什么

时间:2014-09-30 16:31:55

标签: vb.net dataset sqldataadapter

我有这部分代码:

Dim SqlCommand_customer As New SqlCommand("selectcustomer", conn.con)
SqlCommand_customer.CommandType = CommandType.StoredProcedure
Dim da_customer As New SqlDataAdapter
Dim SqlDataAdapter_customer As New SqlDataAdapter(SqlCommand_customer)
Dim ds_customer = New DataSet()
SqlDataAdapter_customer.Fill(ds_customer, "customer")
DataGridView_customer.DataSource = ds_customer.Tables("customer")

所以我想知道"customer"在最后两行中代表什么 整个文件中没有任何名为customer的内容 和MSDN说明Fill中的第二个参数必须是iDataReader类型:

  

的DataReader
  键入:System.Data.IDataReader
  IDataReader的一个实例。

2 个答案:

答案 0 :(得分:1)

fill命令的第二个参数是表的名称。

您正在查看错误的参考资料。您希望从Fill开始SQLDataAdapter命令。

答案 1 :(得分:1)

SqlDataAdapter类派生自DbDataAdapter,它具有Fill的方法重载,它将第二个参数作为字符串。

此字符串是将分配给为存储记录而创建的表的名称,或者,如果数据集中已有表,则它是将使用返回的记录加载/刷新的预先存在的表的名称。命令。

当然是

中的语法
DataGridView_customer.DataSource = ds_customer.Tables("customer")

是您通过名称引用此表的方式(与ds_customer.Tables(0)相同)