如果是查询,就使用select
public static DataSet CreateDataSource(){
OpenFileDialog dialog = new OpenFileDialog()
if (dialog.ShowDialog() != DialogResult.OK)
return null
string filename = dialog.FileName
string strConn
strConn = "Provider=Microsoft.Jet.OLEDB.4.0" +
"Data Source=" + filename +
"Extended Properties=Excel 8.0"
try
{
OleDbConnection conn = new OleDbConnection(strConn)
OleDbDataAdapter myCommand = new OleDbDataAdapter("SELECT * FROM [数据$]", strConn)
DataSet myDataSet = new DataSet()
myCommand.Fill(myDataSet)
return myDataSet
}
catch (Exception ex )
{
MessageBox.Show("打开文件时出错:" + ex.Message)
return null
}
}
//sql 语句说明 "SELECT * FROM [数据$]",其中 “数据”表示excel中sheet的名称,
如:excel文件中有个叫"Sheet1"的标签页,SQL语句为 SELECT * FROM [Sheet1$]",excel的列会自动转化成DataTable的列,支持中文,会自动判断数据行。
每次只能打开一个sheet。
有了上面的数据,你再foreach 插入到SQL中去
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)