0

データベースにデータを入力するために使用している Excel シートがあります。OleDBDataReader が残りを切り捨てる前に列見出しから実際に読み取る特定の数の文字のみがあるように見えます。

これを回避する方法はありますか?

列見出しを取得する方法:

OleDbCommand oleDbCommand = new OleDbCommand("select * from [sheet1$]",
OleDbConnection);
OleDbDataReader reader = oleDbCommand.ExecuteReader();
DataTable dataTable = new DataTable();
dataTable.Load(reader);

foreach (DataColumn column in dataTable.Columns)
{
string columnName = column.ColumnName;
}

期待される結果: 学生の福祉ニーズに対応するための的を絞ったプログラム。例えばbreakfast clubs

実際の結果: 学生の福祉ニーズに対応するための的を絞ったプログラム。例えばbr

reader.GetName(i)メソッドを使用して情報を取得しようとしても、同じ結果が得られました。

4

1 に答える 1

1

64 文字は、Jet Engine リーダーの列ヘッダーの制限です。

http://social.msdn.microsoft.com/Forums/en-US/adodotnetdataproviders/thread/2fb51d81-3d64-445f-806a-519861b561ba/

申し訳ありませんが、より良い参照が見つかりません。

于 2011-07-27T02:05:08.363 に答える