问题描述
ABidip1192.168.1.12192.168.1.2
解决方案
解决方案二:
请教各位高手啊。。。。。。。
解决方案三:
先把excel数据导入到dataset中,然后重dataset中把值再插入数据库。将excel中的数据导入到dataset方法如下:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Data.OleDb;namespaceWindowsFormsApplication1{publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}privatevoidForm1_Load(objectsender,EventArgse){}privatevoidbutton1_Click(objectsender,EventArgse){System.Data.DataTabledt;OpenFileDialogopenfile=newOpenFileDialog();if(openfile.ShowDialog()==DialogResult.OK){try{dt=GetData(openfile.FileName);//获得Excel}catch(Exceptionex){throwex;}}else{dt=null;}}///<summary>///用oledb方式读取excel到datatable///</summary>///<remarks></remarks>///<paramname="strPath">文件存放路径</param>///<returns></returns>privatestaticSystem.Data.DataTableGetData(stringstrPath){System.Data.DataTabledt=newSystem.Data.DataTable();try{stringstrCon="Provider=Microsoft.Jet.OLEDB.4.0;"+"DataSource="+strPath+";"+"ExtendedProperties=Excel8.0;";stringstrSheetName="";using(OleDbConnectioncon=newOleDbConnection(strCon)){con.Open();System.Data.DataTabledtTemp=con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,null);strSheetName=dtTemp.Rows[0][2].ToString().Trim();}StringstrCmd="select*from["+strSheetName+"]";OleDbDataAdaptercmd=newOleDbDataAdapter(strCmd,strCon);cmd.Fill(dt);}catch(Exceptionex){MessageBox.Show(ex.Message);}returndt;}}}
然后再写一个For循环,将dataset中的数据逐一插入数据。
解决方案四:
SqlConnectionconn=newSqlConnection("server=Jzx;database=Jzx;uid=sa;pwd=sa");//连接excel数据源stringexcelconnstring=@"Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+文件名(注意要绝对路径如:c:/....)+"";excelconnstring+=@";ExtendedProperties=""Excel8.0;HDR=Yes;IMEX=1""";System.Data.OleDb.OleDbConnectionexcelconn=newSystem.Data.OleDb.OleDbConnection(excelconnstring);stringsql="select*from[sheet1$]";System.Data.OleDb.OleDbDataAdaptermycomm=newSystem.Data.OleDb.OleDbDataAdapter(sql,excelconn);DataSetmyds=newDataSet();mycomm.Fill(myds,"ss");SqlCommandcm=newSqlCommand();cm.Connection=conn;conn.Open();for(inti=0;i<myds.Tables[0].Rows.Count;i++){stringupdateSql1="insertintoxz(xzj,wsl)values('"+myds.Tables[0].Rows[i]["贾子炫"]+"','"+myds.Tables[0].Rows[i]["男"]+"')";cm.CommandText=updateSql1;cm.ExecuteNonQuery();}
解决方案五:
还有如果你想用Excel做数据源的话呢,记得Excel的第一行就是字段名