ExcelからOracleデータベースにデータをインポートするユーティリティを作成しています。
Excelファイルの固定テンプレートがあります。
JetプロバイダーとADO.Net-Ole接続ツールでデータをインポートしようとすると、次の問題が見つかりました。列にデータ型が混在しているためにインポートされていない列があります[stringと番号]、
インターネットでこの問題を探しました。理由はExcelからデータ型を推測しているためです。
ロードコード:
connection = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0; Data Source={0};Extended Properties=Excel 8.0;");
string columns = "P_ID, FULL_NAME_AR, job_no, GENDER, BIRTH_DATE, RELIGION, MARITAL_STATUS, NAT_ID, JOB_Name, FIRST_HIRE_DATE, HIRE_DATE, CONTRACT_TYPE, GRADE_CODE, QUALIFICATION";
string sheetName = "[Emps$]";
OleDbCommand command = new OleDbCommand(string.Format("select {0} from {1} where p_id is not null", columns, sheetName), connection);
connection.Open();
dr = command.ExecuteReader();
DataTable table = new DataTable();
table.Load(dr);
Excelに推測を停止し、データをテキストとして表示するにはどうすればよいですか?
ない場合は、回避策を教えていただけますか?
前もって感謝します