EXCEL數(shù)據(jù)上傳到SQL SERVER中的簡單實(shí)現(xiàn)方法
EXCEL數(shù)據(jù)上傳到SQL SERVER中的方法需要注意到三點(diǎn)!注意點(diǎn)一:要把EXCEL數(shù)據(jù)上傳到SQL SERVER中必須提前把EXCEL傳到服務(wù)器上.
做法: 在ASP.NET環(huán)境中,添加一個(gè)FileUpload上傳控件
后臺(tái)代碼的E.X:
if (FileUpload1.HasFile) //如果用戶確實(shí)選擇了上傳控件的瀏覽按鈕,瀏覽文件成功.
{
this.FileUpload1.SaveAs("E:\\Temp\\" + FileUpload1.FileName); //保存到服務(wù)器的目錄,需要根據(jù)服務(wù)器具體情況修改FileUpload1.FileName會(huì)自動(dòng)獲取上傳文件名.
}
//OK成功上傳到服務(wù)器的E:\Temp目錄下(自己寫的時(shí)候注意錯(cuò)誤處理,和異常處理啊,很重要的).
注意點(diǎn)二: SQL SERVER 服務(wù)器中的表的結(jié)構(gòu)(字段)要與要上傳來的EXCEL格式順序等相同.
保存到服務(wù)器的關(guān)鍵代碼如下E.X(SQL 語句):
insert into EmployeesCheck select * from OPENROWSET('MICROSOFT.JET.OLEDB.4.0' ,'Excel 8.0;hdr=yes;database=E:\\Temp\\" + FileUpload1.FileName + "',Teenie$)
// EmployeesCheck 是我在SQL SERVER 中的數(shù)據(jù)接受表,hdr=yes 表示EXCEL內(nèi)容第一行作為內(nèi)容字段而不是字段列
Teenie是我EXCEL的當(dāng)前頁的名稱(注意這個(gè)一定要寫對,否則的話會(huì)出錯(cuò),另外要在名字后面家$這個(gè)東西)
解除SQL阻止:
SQL Server 阻止了對組件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的訪問,因?yàn)榇私M件已作為此服務(wù)器安全配置的一部分而被關(guān)閉。系統(tǒng)管理員可以通過使用 sp_configure 啟用 'Ad Hoc Distributed Queries'。有關(guān)啟用 'Ad Hoc Distributed Queries' 的詳細(xì)信息,請參閱 SQL Server 聯(lián)機(jī)叢書中的 "外圍應(yīng)用配置器"。
因?yàn)镾QL2005默認(rèn)是沒有開啟'Ad Hoc Distributed Queries' 組件,開啟方法如下
EXEC sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO
EXEC sp_configure 'Ad Hoc Distributed Queries', 1
GO
RECONFIGURE
GO
哈哈!就說到這些把 這個(gè)比較簡單 能對付一般的應(yīng)用了,因?yàn)橐话阌肊XCEL數(shù)據(jù)的都是公司內(nèi)部數(shù)據(jù)處理,所以完全夠應(yīng)付了,但是如果是商業(yè)化或者專業(yè)的網(wǎng)站讓任何普通用戶上傳EXCEL的話就不大合適了,畢竟你不能強(qiáng)烈要求所有用戶EXCEL的表的數(shù)據(jù)頁的名字都叫Teenie 呵呵,網(wǎng)上還有一種很麻煩的SQL語句(都是參數(shù)的形式)可以解決這個(gè)問題,呵呵 大家無妨去參考一下!
相關(guān)文章
使MySQL能夠存儲(chǔ)emoji表情字符的設(shè)置教程
這篇文章主要介紹了使MySQL能夠存儲(chǔ)emoji表情字符的設(shè)置教程,關(guān)鍵在于utf8mb4字符集的設(shè)置,需要的朋友可以參考下2015-12-12
mysql-8.0.15-winx64 解壓版安裝教程及退出的三種方式
本文通過圖文并茂的形式給大家介紹了mysql-8.0.15-winx64 解壓版安裝,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-04-04
如何添加一個(gè)mysql用戶并給予權(quán)限詳解
在很多時(shí)候我們并不會(huì)直接利用mysql的root用戶進(jìn)行項(xiàng)目的開發(fā),一般我們都會(huì)創(chuàng)建一個(gè)具有部分權(quán)限的用戶,下面這篇文章主要給大家介紹了關(guān)于如何添加一個(gè)mysql用戶并給予權(quán)限的相關(guān)資料,需要的朋友可以參考下2023-03-03
MySQL server has gone away 問題的解決方法
MySQL server has gone away 問題解決方法,需要的朋友可以參考下。2010-06-06
MySQL5.7升級MySQL8.0的完整卸載與安裝及連接Navicat的步驟
因?yàn)橐粋€(gè)項(xiàng)目交接需要需要將mysql物理備份文件還原至MySQL5.7,并且將mysql5.7升級到MySQL8.0,下面這篇文章主要給大家介紹了關(guān)于MySQL5.7升級MySQL8.0的完整卸載與安裝及連接Navicat的相關(guān)資料,需要的朋友可以參考下2023-03-03
MySQL解決Navicat設(shè)置默認(rèn)字符串時(shí)的報(bào)錯(cuò)問題
本文主要介紹了MySQL解決Navicat設(shè)置默認(rèn)字符串時(shí)的報(bào)錯(cuò),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06
MySql數(shù)據(jù)庫分布式存儲(chǔ)配置實(shí)操步驟
這篇文章主要為大家介紹了MySql數(shù)據(jù)庫分布式存儲(chǔ)配置實(shí)操步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07

