在客户端有一张EXCEL电子表怎么样才能远程导入到服务器上的数据库中?
服务器是否也要安装EXCEL?我在本机导入时,说未能创建Microsoft.Jet.OLEDB.4.0实例,如何处理?是不是安装的时候没装那东西?能否提供具体的实现代码啊?先谢了
服务器是否也要安装EXCEL?我在本机导入时,说未能创建Microsoft.Jet.OLEDB.4.0实例,如何处理?是不是安装的时候没装那东西?能否提供具体的实现代码啊?先谢了
insert OPENDATASOURCE(
'SQLOLEDB',
'Data Source=远程ip;User ID=sa;Password=密码'
).库名.dbo.表名 (列名1,列名2)
SELECT 列名1,列名2
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')xactions$
insert OPENDATASOURCE(
'SQLOLEDB',
'Data Source=远程ip;User ID=sa;Password=密码'
).库名.dbo.表名 (列名1,列名2)
SELECT 列名1,列名2
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions$
myFile.PostedFile.SaveAs(fileName);
string extName=System.IO.Path.GetExtension(myFile.PostedFile.FileName);
if(extName!=".xls"||extName.Length<1)
{
Response.Write( "<script language=javascript>alert('数据导入失败.可能是文件格式或路径不正确!!!');</script>");
return;
}// string mystring="Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = '"+fileName+"'"+";Extended Properties=Excel 8.0";
OleDbConnection cnnxls = new OleDbConnection (mystring);
OleDbDataAdapter myDa =new OleDbDataAdapter("select * from [Sheet1$]",cnnxls);
DataSet myDs =new DataSet();
myDa.Fill(myDs,"fzr");
if(myDs.Tables[0].Rows.Count<=0)
{
Response.Write( "<script language=javascript>alert('文件中可能没有数据,请检查后重新导入!');</script>");
return;
} zjid=new int[myDs.Tables[0].Rows.Count];
string strSql = "";
string CnnString="Provider=SQLOLEDB;"+ConStr;
OleDbConnection conn =new OleDbConnection(CnnString);
OleDbCommand myCmd =null; try
{
conn.Open ();
for(int i=0; i<myDs.Tables[0].Rows.Count; i++)
{
strSql="insert into PSZJJBQK(XM,XB,NL,GZDW,ZW,ZC,BYYX,XL,ZY,LXFS,EMAIL,CDGJJXMQK,QDDKYCGJSHJLQK,ZYXSJGRZQK,BLXYJLQK) values ('";
strSql += myDs.Tables[0].Rows[i]["XM"].ToString() + "', '";
strSql += myDs.Tables[0].Rows[i]["XB"].ToString() + "', '";
strSql += myDs.Tables[0].Rows[i]["NL"].ToString() + "', '";
strSql += myDs.Tables[0].Rows[i]["QDDKYCGJSHJLQK"].ToString() + "', '"; strSql += myDs.Tables[0].Rows[i]["BLXYJLQK"].ToString() + "')";
strSql +="select @@IDENTITY";
try
{
myCmd=new OleDbCommand(strSql,conn);
zjid[i]=int.Parse(myCmd.ExecuteScalar().ToString().Trim());
}
catch
{
Response.Write( "<script language=javascript>alert('数据导入失败!');</script>");
return;
}
}
catch................
我用上面的那个远程导入试过了,没用。报错!那说未能创建Microsoft.Jet.OLEDB.4.0实例是怎么回事?
我是想直接导入,省的以后再删!