如何把Excel數(shù)據(jù)導(dǎo)入到SQL2008數(shù)據(jù)庫的實(shí)例方法
更新時間:2013年04月02日 17:36:26 作者:
最近想練習(xí)一下批量插入數(shù)據(jù),所以從網(wǎng)上找了一下資料,做了一個怎么把Excel文件數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫。
復(fù)制代碼 代碼如下:
private void AddManyData_Click(object sender, RoutedEventArgs e)
{
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Filter = "Excel文件|*.xls";
if ((bool)openFileDialog.ShowDialog())
{
FileInfo fileInfo = new FileInfo(openFileDialog.FileName);
string filePath = fileInfo.FullName;
string connExcel = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filePath + ";Extended Properties=Excel 8.0";
using (OleDbConnection oleDbConn = new OleDbConnection(connExcel))
{
oleDbConn.Open();
//獲取excel表
DataTable dt = oleDbConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
//獲取Excel表的表名
string tableName = dt.Rows[0][2].ToString().Trim();
//去掉空格
tableName = "[" + tableName.Replace("'", "") + "]";
//利用SQL語句從Excel文件里獲取數(shù)據(jù)
string query = @"SELECT 學(xué)號,姓名,公益勞動,電子工藝實(shí)習(xí),操作系統(tǒng) ,計算機(jī)組成,數(shù)值分析,網(wǎng)絡(luò)設(shè)備與集成,動態(tài)網(wǎng)站開發(fā)實(shí)驗(yàn)周,動態(tài)網(wǎng)站開發(fā),均分,排名 FROM "; + tableName;
DataSet dataSet = new DataSet();
using (OleDbCommand oleDbcomm = oleDbConn.CreateCommand())
{
oleDbcomm.CommandText = query;
OleDbDataAdapter oleAdapter = new OleDbDataAdapter(oleDbcomm);
oleAdapter.Fill(dataSet);
}
string connStr = "Data Source=HESHUHUA-PC;Initial Catalog=RSMSystem;Integrated Security=True";
//利用SqlBulkCopy批量插入數(shù)據(jù)
using (SqlBulkCopy sqlbc = new SqlBulkCopy(connStr))
{
sqlbc.DestinationTableName = "T_StuScore";
// sqlbc.ColumnMappings.Add("學(xué)號", "StuNum"),第一個參數(shù)對應(yīng)數(shù)據(jù)庫中的列名,
//第二個參數(shù)對應(yīng)數(shù)據(jù)庫中相應(yīng)表的列名
sqlbc.ColumnMappings.Add("學(xué)號", "StuNum");
sqlbc.ColumnMappings.Add("姓名", "StuName");
sqlbc.ColumnMappings.Add("公益勞動", "Activity");
sqlbc.ColumnMappings.Add("電子工藝實(shí)習(xí)", "ElecAct");
sqlbc.ColumnMappings.Add("操作系統(tǒng)", "OprationSystem");
sqlbc.ColumnMappings.Add("計算機(jī)組成", "ComputerMaded");
sqlbc.ColumnMappings.Add("數(shù)值分析", "DataAnalyze");
sqlbc.ColumnMappings.Add("網(wǎng)絡(luò)設(shè)備與集成", "NetWork");
sqlbc.ColumnMappings.Add("動態(tài)網(wǎng)站開發(fā)實(shí)驗(yàn)周", "WebWeek");
sqlbc.ColumnMappings.Add("動態(tài)網(wǎng)站開發(fā)", "WebMake");
sqlbc.ColumnMappings.Add("均分", "AvScore");
sqlbc.ColumnMappings.Add("排名", "StuPaiMing");
sqlbc.WriteToServer(dataSet.Tables[0]);
MessageBox.Show("數(shù)據(jù)導(dǎo)入成功!");
}
}
}
}
您可能感興趣的文章:
- access dbase excel foxpro 數(shù)據(jù)庫瀏覽器V3.1版 下載
- Excel數(shù)據(jù)導(dǎo)入Mysql數(shù)據(jù)庫的實(shí)現(xiàn)代碼
- Excel導(dǎo)入Sqlserver數(shù)據(jù)庫腳本
- Linux下將excel數(shù)據(jù)導(dǎo)入到mssql數(shù)據(jù)庫中的方法
- php將數(shù)據(jù)庫導(dǎo)出成excel的方法
- php中使用ExcelFileParser處理excel獲得數(shù)據(jù)(可作批量導(dǎo)入到數(shù)據(jù)庫使用)
- php excel reader讀取excel內(nèi)容存入數(shù)據(jù)庫實(shí)現(xiàn)代碼
- ASP.NET下將Excel表格中的數(shù)據(jù)規(guī)則的導(dǎo)入數(shù)據(jù)庫思路分析及實(shí)現(xiàn)
- Excel導(dǎo)入數(shù)據(jù)庫時出現(xiàn)的文本截斷問題解決方案
- 將Excel中數(shù)據(jù)導(dǎo)入到Access數(shù)據(jù)庫中的方法
- Java 使用poi把數(shù)據(jù)庫中數(shù)據(jù)導(dǎo)入Excel的解決方法
- PHP 如何利用phpexcel導(dǎo)入數(shù)據(jù)庫
- 把excel表格里的數(shù)據(jù)導(dǎo)入sql數(shù)據(jù)庫的兩種方法
- Excel、記事本數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫的實(shí)現(xiàn)方法
- C#連接Excel2003和Excel2007以上版本做數(shù)據(jù)庫的連接字符串
- c#將Excel數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫的實(shí)現(xiàn)代碼
- 利用phpexcel把excel導(dǎo)入數(shù)據(jù)庫和數(shù)據(jù)庫導(dǎo)出excel實(shí)現(xiàn)
- c#生成excel示例sql數(shù)據(jù)庫導(dǎo)出excel
- android通過jxl讀excel存入sqlite3數(shù)據(jù)庫
- Drupal讀取Excel并導(dǎo)入數(shù)據(jù)庫實(shí)例
- 使用工具 plsqldev將Excel導(dǎo)入Oracle數(shù)據(jù)庫
- asp.net中EXCEL數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫的方法
- php導(dǎo)入excel文件到mysql數(shù)據(jù)庫的方法
- C#窗體讀取EXCEL并存入SQL數(shù)據(jù)庫的方法
- C#定制Excel界面并實(shí)現(xiàn)與數(shù)據(jù)庫交互的方法
相關(guān)文章
SQL Server 2008數(shù)據(jù)庫分布式查詢知識
今天小編就為大家分享一篇關(guān)于SQL Server 2008數(shù)據(jù)庫分布式查詢知識,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-01-01SQLServer 2008中的代碼安全(五) 非對稱密鑰加密
非對稱密鑰包含數(shù)據(jù)庫級的內(nèi)部公鑰和私鑰,它可以用來加密和解密SQL Server數(shù)據(jù)庫中的數(shù)據(jù),它可以從外部文件或程序集中導(dǎo)入,也可以在SQL Server數(shù)據(jù)庫中生成。2011-06-06SQL Server 2008 R2 為用戶權(quán)限分配的操作步驟
這篇文章主要介紹了SQL Server 2008 R2 為用戶權(quán)限分配的操作步驟,有時候我們不得不設(shè)置一些權(quán)限,例如禁止刪除等,那么就可以參考下面的方法2017-10-10sql2008保存注冊服務(wù)器的實(shí)現(xiàn)方法
今天突然想能不能把經(jīng)常要用的服務(wù)器連接都保存好,不用每次都進(jìn)這個畫面,然后連接呢,經(jīng)過查閱相關(guān)資料,果然有個懶人的方法2010-07-07Microsoft SQL Server 2008安裝圖解教程(Windows 7)
本文詳細(xì)介紹了SQL Server 2008的完整安裝過程,但未介紹關(guān)于SP1補(bǔ)丁安裝說明,在Windows 7系統(tǒng)上運(yùn)行必須安裝此補(bǔ)丁,對于部分服務(wù)的配置也未做詳細(xì)的介紹2012-07-07SQLServer 2008中的代碼安全(一) 存儲過程加密與安全上下文
最近對SQL Server 2008的安全入門略作小結(jié),以作備忘。本文涉及兩個應(yīng)用:存儲過程加密和安全上下文。2011-06-06SQL Server 2008怎樣添加自增列實(shí)現(xiàn)自增序號
有的表需要添加自增列,在添加新紀(jì)錄時自動添加一個序號,有兩種不錯的方法通過T-SQL代碼、通過企業(yè)管理器在此分享給大家2013-09-09SQL server 2008 數(shù)據(jù)安全(備份和恢復(fù)數(shù)據(jù)庫)
備份和恢復(fù)數(shù)據(jù)庫對于數(shù)據(jù)庫管理員來說是保證數(shù)據(jù)安全性的一項(xiàng)重要工作。SQL server 2008提供了高性能的備份和恢復(fù)功能,可以實(shí)現(xiàn)多種方式的數(shù)據(jù)庫備份和恢復(fù)操作,避免了由于各種故障造成的損失而丟失數(shù)據(jù)2012-08-08