1.创建一个WinForm程序,添加一个Button控件
2.Button事件
private void button1_Click(object sender, EventArgs e)
{
System.Windows.Forms.OpenFileDialog fd = new OpenFileDialog();
if (fd.ShowDialog() == DialogResult.OK)
{
string fileName = fd.FileName;
syncExcelToDataBase(fileName, textBox1.Text.ToString());
}
}
3.从Excel读取数据到DataTable
private void syncExcelToDataBase(string excelfilepath, string sheetName)
{
string strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + excelfilepath + ";" + "Extended Properties='Excel 12.0; HDR = Yes'";
string strExcel = string.Format("select * from [{0}$]", sheetName);
OleDbDataAdapter da = new OleDbDataAdapter(strExcel, strConn);
DataSet ds = new DataSet();
try
{
da.Fill(ds);
dt = ds.Tables[];
if (dt != null && dt.Rows.Count > )
{
foreach (DataRow dr in dt.Rows)
{
Update(dr);
}
} }
catch (Exception err)
{
MessageBox.Show("操作失败!" + err.ToString());
}
}
4.更新到Sql server 数据库中
private void Update(DataRow dr)
{
string saleName = dr["TELESALES MANILA"].ToString().Trim();
string crn = dr["CRN"].ToString().Trim();
if(!string.IsNullOrEmpty(saleName) && saleName != "#N/A")
{
string[] arr = saleName.Split(' ');
if(arr.Length>)
{
string sql1 = "SELECT *FROM [dbo].[PUserAdmin] where FirstName='" + arr[] + "' and LastName='" + arr[] + "'";
DataTable dtResult = SqlHelper.ExecuteDataTable(sql1,CommandType.Text);
string sql2 = "update [dbo].[PAgents] set BFax='" + dtResult.Rows[][] + "' where CRN='" + crn + "'";
SqlHelper.ExecuteNonQuery(sql2, CommandType.Text);
}
}
}