日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

如何實現將Excel表(含多張數據庫表)導入數據庫(SQLServer)

瀏覽:185日期:2022-08-03 16:19:04

前幾天,一直在網上搜索資料,想實現這個功能,都沒找到我想要的結果,最后只要自己想辦法實現了害怕忘記,把它貼出來,以便以后使用,也給需要這個功能的人提供點思路:大體思路是:將EXCEL的數據提出放在數據集中,在過循環將主表數據插入,在通過循環將從表插入:代碼如下:

private void button1_Click(object sender, System.EventArgs e){//選擇文件 ofdSelectExcel.Filter = 'Excel Files(*.xls)|*.xls'; ofdSelectExcel.RestoreDirectory = true; if( ofdSelectExcel.ShowDialog() == DialogResult.OK ) {if ( ofdSelectExcel.FileName.Trim().Length == 0){ MessageBox.Show(this,'Please select a excel file first!'); return;}else{ ImportExcelToSqlServer(ofdSelectExcel.FileName.Trim());} }}

********************************************************提取數據public; void ImportExcelToSqlServer(string fileName){if (fileName == null){ throw new ArgumentNullException('filename string is null!');}

if (fileName.Length == 0){ throw new ArgumentException('filename string is empty!');}

string oleDBConnString = String.Empty;oleDBConnString = 'Provider=Microsoft.Jet.OLEDB.4.0;';oleDBConnString += 'Data Source=';oleDBConnString += fileName;oleDBConnString += ';Extended Properties=Excel 8.0;';

OleDbConnection oleDBConn = null;OleDbDataAdapter oleAdMaster = null;DataTable m_tableName=new DataTable();;DataSet ds=new DataSet();try{ oleDBConn = new OleDbConnection(oleDBConnString); oleDBConn.Open(); m_tableName=oleDBConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,null); if (m_tableName != null && m_tableName.Rows.Count > 0) {

m_tableName.TableName =m_tableName.Rows[0]['TABLE_NAME'].ToString();

} string sqlMaster; sqlMaster=' SELECT *; FROM ['+m_tableName+']'; oleAdMaster=new OleDbDataAdapter(sqlMaster,oleDBConn); oleAdMaster.Fill(ds,'m_tableName'); MailRebateManager manger=new MailRebateManager(); bool isSucess=manger.AddExceLGmailRebate(ds.Tables['m_tableName'],ApplicationVariable.HomeCompanyID); if(isSucess) { MessageBox.Show('Manipulate Succs!'); } else { MessageBox.Show('Manipulate Failed'); }}catch(Exception ex){ MessageBox.Show(ex.Message); SimpleLogger.Log(ex); try {

} catch (OleDbException e) { SimpleLogger.Log(e); MessageBox.Show('An exception of type ' + e.GetType() +'); }}

}*****************************************將數據進行處理分別插入主表和從表public bool AddExceLGmailRebate(DataTable tb,string homeCompanyID){bool ret=false;SqlConnection con=null; DataTable table=new DataTable();table=tb; string sConn = PublicManager.GetDBConnectionString(homeCompanyID);con=new SqlConnection();con.ConnectionString=sConn; SqlTransaction tran=null;SqlCommand com=null;SqlCommand comm=null; try{con.Open();tran = con.BeginTransaction(); if (table != null && table.Rows.Count > 0){ for(int i=1;i<table.Rows.Count;i++){ string m_PromoCode=Convert.ToString(table.Rows[i][0]);if(m_PromoCode==''){ m_PromoCode=Convert.ToString(table.Rows[i-1][0]);}if(m_PromoCode.Length>50 ){ m_PromoCode=m_PromoCode.Substring(0,50);}

string m_ItemDescription=Convert.ToString(table.DefaultView[i][1]);if(m_ItemDescription.IndexOf('(')>0){int num=m_ItemDescription.IndexOf('(');m_ItemDescription=m_ItemDescription.Substring(0,num);if(m_ItemDescription.Length>50){ m_ItemDescription=m_ItemDescription.Substring(0,50);} }if(m_ItemDescription.Length>50){ m_ItemDescription=m_ItemDescription.Substring(0,50);}

string begin=Convert.ToString(table.DefaultView[i][2]); string m_BeginPromoPeriodDate; string m_EndPromoPeriodEndDate; if(begin=='') { continue; } else { string beginTime=begin.Substring(0,8); beginTime=beginTime.Replace('/','-'); m_BeginPromoPeriodDate=beginTime; string endTime=begin.Substring(begin.Length-8); endTime=endTime.Replace('/','-'); m_EndPromoPeriodEndDate=endTime; }

string m_RebateAmountStr=Convert.ToString(table.DefaultView[i][3]); if(m_RebateAmountStr.Length >9) { m_RebateAmountStr=m_RebateAmountStr.Substring(0,9); } decimal m_RebateAmount; if(m_RebateAmountStr=='') { m_RebateAmount=0; } else { m_RebateAmount= Convert.ToDecimal(m_RebateAmountStr); }

string m_TotalSoldStr=Convert.ToString(table.DefaultView[i][7]);if(m_TotalSoldStr.Length >4){ m_TotalSoldStr=m_TotalSoldStr.Substring(0,4);} int m_TotalSold; if(m_TotalSoldStr=='') { m_TotalSold=0; } else { m_TotalSold=Convert.ToInt32(m_TotalSoldStr); }

string m_RebateReserveStr=Convert.ToString(table.DefaultView[i][8]); if(m_RebateReserveStr.Length>9) { m_RebateReserveStr=m_RebateReserveStr.Substring(0,9); } decimal m_RebateReserve; if(m_RebateReserveStr=='') { m_RebateReserve=0; } else { m_RebateReserve=Convert.ToDecimal(m_RebateReserveStr); }

string m_RedeemedStr=Convert.ToString(table.DefaultView[i][17]); if(m_RedeemedStr.Length >8) { m_RedeemedStr=m_RedeemedStr.Substring(0,8); } decimal m_Redeemed; if(m_RedeemedStr=='') { m_Redeemed=0; } else { m_Redeemed=Convert.ToDecimal(m_RedeemedStr); } string m_PromoItem=Convert.ToString(table.DefaultView[i][23]); if(m_PromoItem.Length >50) { m_PromoItem=m_PromoItem.Substring(0,50); }

DateTime m_InDate; m_InDate=DateTime.Now; string m_sqlMaster='INSERT INTO act.dbo.Newegg_GMailRebate(PromoCode,PromoItem,RebateAmount,ItemDescription,BeginPromoPeriodDate,EndPromoPeriodEndDate,PostMaskDate,TotalSold,RebateReserve,Redeemed,InDate)VALUES(''+m_PromoCode+'',''+m_PromoItem+'',''+m_RebateAmount+'',''+m_ItemDescription+'',''+m_BeginPromoPeriodDate+'',''+m_EndPromoPeriodEndDate+'',''+m_InDate+'',''+m_TotalSold+'',''+m_RebateReserve+'',''+m_Redeemed+'',''+m_InDate+'')'; comm=new SqlCommand(m_sqlMaster,con); comm.Transaction =tran; comm.ExecuteNonQuery (); comm.Dispose(); } for(int i=1;i<table.Rows.Count;i++) { string m_PromoCode=Convert.ToString(table.Rows[i][0]); if(m_PromoCode=='') { continue; } int; m_PromoCodeTransactionID=GetMasterTransactionID(m_PromoCode,homeCompanyID); string m_InvoiceNumber=Convert.ToString(table.Rows[i][4]); if(m_InvoiceNumber.Length >30) { m_InvoiceNumber=m_InvoiceNumber.Substring(0,30); } if(m_InvoiceNumber=='') { m_InvoiceNumber='0'; }

string m_InvoiceDate=Convert.ToString(table.DefaultView[i][6]); if(m_InvoiceDate=='') { DateTime m_InDate; m_InDate=DateTime.Now; m_InvoiceDate=Convert.ToString(m_InDate); }

string m_serialNumberStr=Convert.ToString(table.Rows[i][5]); if(m_serialNumberStr.Length >4) { m_serialNumberStr=m_serialNumberStr.Substring(0,4); } if(m_serialNumberStr=='') { m_serialNumberStr='0'; } int; m_serialNumber=Convert.ToInt32(m_serialNumberStr); string m_TotalValidStr=Convert.ToString( table.DefaultView[i][9]); if(m_TotalValidStr.Length >4) { m_TotalValidStr=m_TotalValidStr.Substring(0,4); } if(m_TotalValidStr=='') { m_TotalValidStr='0'; } int m_TotalValid=Convert.ToInt32 (m_TotalValidStr);

string m_TotalInValidStr=Convert.ToString( table.DefaultView[i][10]); if(m_TotalInValidStr.Length >4) { m_TotalInValidStr=m_TotalInValidStr.Substring(0,4); } if(m_TotalInValidStr=='') { m_TotalInValidStr='0'; } int m_TotalInValid=Convert.ToInt32(m_TotalInValidStr);

string m_ProcessFeeStr=Convert.ToString(table.DefaultView[i][13]); if(m_ProcessFeeStr.Length >9) { m_ProcessFeeStr=m_ProcessFeeStr.Substring(0,9); } if(m_ProcessFeeStr=='') { m_ProcessFeeStr='0'; } decimal m_ProcessFee=Convert.ToDecimal(m_ProcessFeeStr);

string m_sqlDetails='INSERT INTO act.dbo.Newegg_GMailExcelMaster(PromoCodeTransactionID,InvoiceNumber,InvoiceDate,SerialNumber,TotalValid,TotalInvalid,ProcessFee)VALUES(''+m_PromoCodeTransactionID+'',''+m_InvoiceNumber+'',''+m_InvoiceDate+'',''+m_serialNumber+'',''+m_TotalValid+'',''+m_TotalInValid+'',''+m_ProcessFee+'')'; com=new SqlCommand(m_sqlDetails,con); com.CommandTimeout=60; com.Transaction =tran; com.ExecuteNonQuery(); com.Dispose(); m++; } tran.Commit();

ret=true;

} } catch(Exception ex) { try { tran.Rollback(); } catch (SqlException e) { if (tran.Connection != null) { MessageBox.Show('An exception of type ' + e.GetType() +'); } } MessageBox.Show('Error come up row number:'+m.ToString()); MessageBox.Show('Error details:'+ex.Message); SimpleLogger.Log(ex); ret=false; } finally { con.Close(); con.Dispose(); } return ret;

}

出處:成都DotNet俱樂部專欄(kim)

標簽: excel
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
免费在线亚洲欧美| 久久超碰99| 久久精品一区| 日本午夜免费一区二区| 99riav1国产精品视频| 日韩av一区二区在线影视| 久久亚洲国产精品一区二区| 欧美sss在线视频| 精品国产成人| 国产欧美激情| 亚洲精品进入| 亚洲免费成人| 91麻豆精品激情在线观看最新 | 日韩一区二区三区精品视频第3页| 国产综合亚洲精品一区二| av免费不卡国产观看| 久久国产精品美女| 国产精品久久久网站| 久久国产精品免费一区二区三区 | 蜜桃tv一区二区三区| 群体交乱之放荡娇妻一区二区| 精品久久电影| 精品一区二区三区四区五区| 国产伦乱精品| 日韩国产专区| 国产精品日本欧美一区二区三区| 日韩在线卡一卡二| 国产精品99精品一区二区三区∴| 最近高清中文在线字幕在线观看1| 久久精品国产亚洲夜色av网站| 亚洲免费成人| 国产亚洲一区二区三区啪| 成人一区不卡| 亚洲一区二区成人| 欧美亚洲tv| 欧美精品高清| 亚洲精品韩国| 精品久久电影| 欧美福利在线| 国产欧美三级| 亚洲欧美伊人| 国产精品日韩精品中文字幕| 亚洲二区精品| 国产精品jk白丝蜜臀av小说| 亚洲h色精品| 视频精品一区| 在线天堂资源www在线污| 亚洲综合电影一区二区三区| 国产精品黄色| 亚洲作爱视频| 精品久久久中文字幕| 香蕉精品999视频一区二区| 欧美自拍一区| 中文字幕高清在线播放| 老牛影视一区二区三区| 国产suv精品一区| 在线精品国产亚洲| 五月激情久久| 国产乱码精品| 99视频一区| 久久久久久色| 成人免费电影网址| 青青青国产精品| 欧美女激情福利| 国内精品麻豆美女在线播放视频| 亚洲永久字幕| 极品av在线| 日本成人精品| 香蕉人人精品| 久久国产免费看| 国产视频一区在线观看一区免费| 精品美女久久| 日韩国产在线观看一区| 亚洲一级影院| av资源新版天堂在线| 热久久久久久| 亚洲欧美日韩国产一区| 国产精品调教视频| 亚洲色图网站| 久久久久99| 日韩成人免费| 国产欧美日韩一级| 中文视频一区| 99精品在线| 另类综合日韩欧美亚洲| 国产精品毛片在线看| 日韩在线高清| 精品久久久网| 国产欧美精品| 无码日韩精品一区二区免费| 欧美+日本+国产+在线a∨观看| 精品久久精品| 久久不见久久见中文字幕免费| 亚洲精品乱码| 玖玖精品视频| 国产午夜精品一区二区三区欧美| 日韩高清中文字幕一区二区| 国产精品nxnn| 国产美女视频一区二区| 美女精品一区| 黄色免费成人| 91久久黄色| 午夜精品婷婷| 久久久久午夜电影| 久久久亚洲一区| 麻豆精品蜜桃| 韩国精品主播一区二区在线观看 | 丝袜美腿一区二区三区| 天堂资源在线亚洲| 久久精品91| 视频小说一区二区| 久久久影院免费| 亚洲大片在线| 欧美午夜精彩| 亚洲激情精品| 国产免费成人| 亚洲综合精品| 日韩精品一二三| 亚洲一区二区小说| 亚洲丝袜啪啪| 日韩一区免费| 国产亚洲欧美日韩精品一区二区三区 | 亚洲色诱最新| 亚洲神马久久| 亚洲欧洲一区| 免费精品视频最新在线| 亚洲一区久久| 日韩一区精品| 国产精品日韩精品在线播放| 久久av影院| 欧美激情另类| 欧美a级片一区| 国产精品免费99久久久| 国产欧美69| 九九久久国产| 韩国精品主播一区二区在线观看| 精品一区三区| 综合干狼人综合首页| 91成人在线| 国产欧美综合一区二区三区| 成人在线免费观看网站| 成人羞羞在线观看网站| 激情综合在线| 蜜桃av一区二区在线观看| 青青青国产精品| 国产精品成人一区二区不卡| 欧美+亚洲+精品+三区| 亚洲制服欧美另类| 久久国产日韩欧美精品| 精品视频在线你懂得| 婷婷综合六月| 免费中文字幕日韩欧美| 国产精品中文字幕亚洲欧美| 国产白浆在线免费观看| 欧美91视频| 视频一区日韩| 久草精品视频| 蜜桃成人av| 日本aⅴ精品一区二区三区 | 久久久一本精品| 每日更新成人在线视频| 日韩国产91| 精品一区二区三区亚洲| 欧美日韩一区二区三区视频播放| 亚洲色图综合| 九九久久国产| 欧美日韩国产精品一区二区亚洲| 亚洲精品无播放器在线播放| 久久精品资源| 欧美在线影院| 国产精品日本一区二区不卡视频| 久久久久国产精品一区二区| 亚洲精品影视| 国产一区二区三区四区五区| 夜夜嗨网站十八久久| 国产免费av一区二区三区| 精品久久福利| 鲁大师成人一区二区三区| 免费在线亚洲| 亚洲欧美不卡| 国产一区二区三区不卡av | 亚洲综合精品四区| 免费精品一区| 国产精品免费看| 国产一区调教| 亚洲开心激情| 日韩精品免费一区二区在线观看 | 91亚洲国产高清| 亚洲精品激情| 久久国产免费| 国产精品白丝av嫩草影院| 九九综合九九| 卡一卡二国产精品| 久久国产精品毛片| 亚洲天堂av影院| 日韩不卡免费视频| 99精品美女| 久久国产欧美日韩精品| 国产高清一区二区| 精品中文字幕一区二区三区四区|