4

DataAdapter を使用して Excel ファイルを読み取り、そのデータをデータ テーブルに入力しています。

これが私のクエリと接続文字列です。

private string Query = "SELECT * FROM Sheet1";
private string ConnectString = "Provider=Microsoft.ACE.OLEDB.12.0;"
                                    + "Data Source=\"" + Location + "\";"
                                    + "Extended Properties=\"Excel 12.0 Xml;HDR=YES\"";

OleDbDataAdapter DBAddapter = new OleDbDataAdapter(Query, ConnectString);
DataTable DBTable = new DataTable();
DBAddapter.Fill(DBTable);

問題は、Excel ファイルに 12000 レコードが含まれていることですが、データ テーブルには 2502 レコードしか入力されません。

データ アダプタがデータ テーブルに対して読み書きできるレコード数に制限はありますか?

4

1 に答える 1

2

問題は、シートに混合データが含まれていて、数値のみを読み取っていた可能性があります。解決策は、次を指定することです。

Properties="Excel 12.0;IMEX=1";

IMEX=1数値だけでなく、すべてのデータをインポートできます。

于 2016-03-18T07:07:58.943 に答える