如果字段相同可以以下这段代码处理
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb; namespace Excel导入Access测试
{
public partial class Form1 : Form
{
string strDeleteAccess = "";
string strGetDataFromExcel = "";
string strInsertIntoAccess = "";
OleDbConnection oleDbConnAccess;
OleDbConnection oleDbConnExcel;
OleDbCommand oleDbCmdAccess;
OleDbCommand oleDbCmdExcel;
OleDbDataReader oleDbDataReaderExcel; public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
oleDbConnAccess = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Application.StartupPath.Trim() + "\\test.mdb");
oleDbConnAccess.Open();
strDeleteAccess = "delete from product ";
oleDbCmdAccess = new OleDbCommand(strDeleteAccess, oleDbConnAccess);
oleDbCmdAccess.ExecuteNonQuery();
oleDbCmdAccess.Dispose();
oleDbConnAccess.Close(); oleDbConnExcel = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=;Extended properties=Excel 5.0;Data Source=" + Application.StartupPath.Trim() +"\\test.xls");
oleDbConnExcel.Open();
strGetDataFromExcel = "SELECT * FROM [Sheet1$]";
oleDbCmdExcel = new OleDbCommand(strGetDataFromExcel, oleDbConnExcel);
oleDbDataReaderExcel = oleDbCmdExcel.ExecuteReader();
if (oleDbDataReaderExcel.HasRows == true)
{
oleDbConnAccess.Open();
for (; ; )
{
if (oleDbDataReaderExcel.Read() == true)
{
strInsertIntoAccess = "insert into product([NO],[HEIGHT],[WIDTH],[DEPTH],[DOORS]) values('" + oleDbDataReaderExcel.GetValue(0).ToString() + "','" + oleDbDataReaderExcel.GetValue(1).ToString() + "','" + oleDbDataReaderExcel.GetValue(2).ToString() + "','" + oleDbDataReaderExcel.GetValue(3).ToString() + "','" + oleDbDataReaderExcel.GetValue(4).ToString() + "') ";
oleDbCmdAccess = new OleDbCommand(strInsertIntoAccess, oleDbConnAccess);
oleDbCmdAccess.ExecuteNonQuery();
oleDbCmdAccess.Dispose();
}
else
break;
}
oleDbConnAccess.Close();
}
oleDbDataReaderExcel.Close();
oleDbCmdExcel.Dispose();
oleDbConnExcel.Close();
}
}
}如果不相同,这段代码怎么修改?
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb; namespace Excel导入Access测试
{
public partial class Form1 : Form
{
string strDeleteAccess = "";
string strGetDataFromExcel = "";
string strInsertIntoAccess = "";
OleDbConnection oleDbConnAccess;
OleDbConnection oleDbConnExcel;
OleDbCommand oleDbCmdAccess;
OleDbCommand oleDbCmdExcel;
OleDbDataReader oleDbDataReaderExcel; public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
oleDbConnAccess = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Application.StartupPath.Trim() + "\\test.mdb");
oleDbConnAccess.Open();
strDeleteAccess = "delete from product ";
oleDbCmdAccess = new OleDbCommand(strDeleteAccess, oleDbConnAccess);
oleDbCmdAccess.ExecuteNonQuery();
oleDbCmdAccess.Dispose();
oleDbConnAccess.Close(); oleDbConnExcel = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=;Extended properties=Excel 5.0;Data Source=" + Application.StartupPath.Trim() +"\\test.xls");
oleDbConnExcel.Open();
strGetDataFromExcel = "SELECT * FROM [Sheet1$]";
oleDbCmdExcel = new OleDbCommand(strGetDataFromExcel, oleDbConnExcel);
oleDbDataReaderExcel = oleDbCmdExcel.ExecuteReader();
if (oleDbDataReaderExcel.HasRows == true)
{
oleDbConnAccess.Open();
for (; ; )
{
if (oleDbDataReaderExcel.Read() == true)
{
strInsertIntoAccess = "insert into product([NO],[HEIGHT],[WIDTH],[DEPTH],[DOORS]) values('" + oleDbDataReaderExcel.GetValue(0).ToString() + "','" + oleDbDataReaderExcel.GetValue(1).ToString() + "','" + oleDbDataReaderExcel.GetValue(2).ToString() + "','" + oleDbDataReaderExcel.GetValue(3).ToString() + "','" + oleDbDataReaderExcel.GetValue(4).ToString() + "') ";
oleDbCmdAccess = new OleDbCommand(strInsertIntoAccess, oleDbConnAccess);
oleDbCmdAccess.ExecuteNonQuery();
oleDbCmdAccess.Dispose();
}
else
break;
}
oleDbConnAccess.Close();
}
oleDbDataReaderExcel.Close();
oleDbCmdExcel.Dispose();
oleDbConnExcel.Close();
}
}
}如果不相同,这段代码怎么修改?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货