求一段EXCEL导入SQL的代码?
解决方案 »
- 找不到类型或命名空间名称“Word”(是否缺少 using 指令或程序集引用?)
- 为什么在VS2005建立的.ascx文件没有对应的.ascx.cs文件呢?
- 如何在窗体控件库中,获取系统相对路径?
- Array 成员中显式接口实现中的方法如何使用
- 如何给动态页传参
- The ConnectionString property has not been initialized
- 下载代码运行奇慢,为什么啊?
- 关于精度的问题,请高手进来解决,大家可以学习一下
- 求救!深夜散分:关于VS.net的安装问题
- C#的语法全看完了(一本书)头很晕,接下来做什么?研究算法?数据结构?还是直接编程??
- onpaint
- 怎样能过代码将excel导入SQLserver中
public static DataSet GetExcelContent(string filepath)
{
string strCon = " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = "+filepath+";Extended Properties='Excel 8.0;IMEX=1'" ;
System.Data.OleDb.OleDbConnection myConn = new System.Data.OleDb.OleDbConnection (strCon) ;
string strCom = " SELECT * FROM [Sheet1$] " ;
myConn.Open( ) ;
System.Data.OleDb.OleDbDataAdapter myCommand = new System.Data.OleDb.OleDbDataAdapter(strCom,myConn ) ;
//创建一个 DataSet对象
DataSet myDataSet = new DataSet( );
//得到自己的DataSet对象
myCommand.Fill (myDataSet,"[Sheet1$]") ;
//关闭此数据链接
myConn.Close();
return myDataSet;
}
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.OleDb.OleDbException: 找不到可安装的 ISAM。源错误:
行 24: System.Data.OleDb.OleDbConnection myConn = new System.Data.OleDb.OleDbConnection(strCon);
行 25: string strCom = " SELECT * FROM [Sheet1$] ";
行 26: myConn.Open();
行 27: System.Data.OleDb.OleDbDataAdapter myCommand = new System.Data.OleDb.OleDbDataAdapter(strCom, myConn);
行 28: //创建一个 DataSet对象
你查一查
连接字符串错误
DataSource-------->Data Source,中间有空格
{
string mpath = "";
mpath = "E:\\ceshi.xls";
GetExcelContent(mpath);
}
public static DataSet GetExcelContent(string filepath)
{
string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;DataSource= " + filepath + ";Extended Properties='Excel 8.0;IMEX=1'";
System.Data.OleDb.OleDbConnection myConn = new System.Data.OleDb.OleDbConnection(strCon);
string strCom = " SELECT * FROM [Sheet1$] ";
myConn.Open();
System.Data.OleDb.OleDbDataAdapter myCommand = new System.Data.OleDb.OleDbDataAdapter(strCom, myConn);
//创建一个 DataSet对象
DataSet myDataSet = new DataSet();
//得到自己的DataSet对象
myCommand.Fill(myDataSet, "[Sheet1$]");
//关闭此数据链接
myConn.Close();
return myDataSet;
}我代码是这样写的,请大家帮忙看看,我这里还是报刚刚那个错.是不是写的路径有问题?
protected void Page_Load(object sender, EventArgs e)
{
string mpath = "";
mpath = "E:\\ceshi.xls";
GetExcelContent(mpath);
}
public static DataSet GetExcelContent(string filepath)
{
string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " + filepath + ";Extended Properties='Excel 8.0;IMEX=1'";
System.Data.OleDb.OleDbConnection myConn = new System.Data.OleDb.OleDbConnection(strCon);
string strCom = " SELECT * FROM [Sheet1$] ";
myConn.Open();
System.Data.OleDb.OleDbDataAdapter myCommand = new System.Data.OleDb.OleDbDataAdapter(strCom, myConn);
//创建一个 DataSet对象
DataSet myDataSet = new DataSet();
//得到自己的DataSet对象
myCommand.Fill(myDataSet, "[Sheet1$]");
//关闭此数据链接
myConn.Close();
return myDataSet;
}
{
try
{
string strConn; strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + Src +";"+
"Extended Properties=\"Excel 8.0;IMEX=1;\""; //连接 OleDbConnection conn = new OleDbConnection(strConn); conn.Open(); System.Data.DataTable schemaTable = conn.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables,null); string tableName=schemaTable.Rows[0][2].ToString().Trim(); //得到excel表名 OleDbDataAdapter myCommand = new OleDbDataAdapter("SELECT * FROM ["+ tableName +"]", strConn); //查找excel数据 DataSet myDataSet = new DataSet(); //定义数据 myCommand.Fill(myDataSet); conn.Close(); return myDataSet;
}
catch
{
return null;
}
}
可能与连接字符串有关