为什么未用所有数据填充数据集

时间:2019-01-04 15:50:18

标签: .net dataset sql-server-data-tools

我正在通过查询Excel工作表(使用OleDbDataAdapter)来填充数据集。这在脚本任务中的SSDT中。我已经验证了以下内容:

  1. 我传递的查询是正确的:从[Monthly_Measurements $ A1:ZZ1000]中选择*
  2. 正在查询正确的工作簿
  3. 工作表中有数据-数据通过列LE(317)和第554行

正在填充数据集,以使行数为554(正确,但仅将列数填充为255)

这是我的代码:

Dim theQuery As String = Dts.Variables("stMonthlyMeasurementsQuery").Value.ToString
excelFile = Dts.Variables("stFlatFileConnString").Value.ToString
connectionString = "Data Source=" + Dts.Variables("stFlatFileConnString").Value.ToString + ";Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties=" + Chr(34) + "Excel 12.0 Xml;HDR=NO;IMEX=1" + Chr(34) + ";"
excelConnection = New OleDbConnection(connectionString)
Dim cscicmdExcel As New Data.OleDb.OleDbDataAdapter(theQuery, excelConnection)
Dim theCSCIData As DataSet = New DataSet
cscicmdExcel.Fill(theCSCIData, "TheData")
MsgBox("Columns: " + theCSCIData.Tables("TheData").Columns.Count.ToString)
MsgBox("Rows: " + theCSCIData.Tables("TheData").Rows.Count.ToString)

我不知道为什么当有317列数据时仅填充255列。该查询被设置为覆盖一个很大的范围(Monthly_Measurements $ A1:ZZ1000),因为它会限制在查找数据的位置。同样,我有数据通过列LE(317)。

0 个答案:

没有答案