我在尝试从excel电子表格创建c#数据表时遇到问题。代码很简单,但是由于某些原因,当我逐步执行代码时,数据表仅加载电子表格中700列中的256个。查看下面的代码,Settings.Excel_Proj_Select只是“从Project_Data $中选择*”。是否有最大列数?如果有,是否有办法将整张表放入数据表中?
public static DataTable getRowData()
{
OleDbConnection cnn = new OleDbConnection(Settings.ExcelCN);
OleDbCommand oconn = new OleDbCommand(Settings.Excel_Proj_Select, cnn);
cnn.Open();
OleDbDataAdapter adp = new OleDbDataAdapter(oconn);
DataTable dt = new DataTable();
adp.Fill(dt);
cnn.Close();
dt.Columns.Add("Extract_Date", typeof(string));
foreach (DataRow row in dt.Rows)
{
row["Extract_Date"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
}
return dt;
}
任何信息,不胜感激。谢谢!
使用OleDb时似乎有默认的最大列数,是的。
但是您可以通过在查询中指定范围来更改此设置:
//Modify the range to suit your needs
SELECT * FROM Project_Data$[RANGE]:[HERE]