《MYSQL數(shù)據(jù)庫(kù)EXCEL數(shù)據(jù)上傳到SQL SERVER中的簡(jiǎn)單實(shí)現(xiàn)方法》要點(diǎn):
本文介紹了MYSQL數(shù)據(jù)庫(kù)EXCEL數(shù)據(jù)上傳到SQL SERVER中的簡(jiǎn)單實(shí)現(xiàn)方法,希望對(duì)您有用。如果有疑問(wèn),可以聯(liá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目錄下(自己寫(xiě)的時(shí)候注意錯(cuò)誤處理,和異常處理啊,很重要的).
注意點(diǎn)二: SQL SERVER 服務(wù)器中的表的結(jié)構(gòu)(字段)要與要上傳來(lái)的EXCEL格式順序等相同.
保存到服務(wù)器的關(guān)鍵代碼如下E.X(SQL 語(yǔ)句):
代碼如下:
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)前頁(yè)的名稱(注意這個(gè)一定要寫(xiě)對(duì),否則的話會(huì)出錯(cuò),另外要在名字后面家$這個(gè)東西)
解除SQL阻止:
SQL Server 阻止了對(duì)組件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的訪問(wèn),因?yàn)榇私M件已作為此服務(wù)器平安配置的一部分而被關(guān)閉.系統(tǒng)管理員可以通過(guò)使用 sp_configure 啟用 'Ad Hoc Distributed Queries'.有關(guān)啟用 'Ad Hoc Distributed Queries' 的詳細(xì)信息,請(qǐng)參閱 SQL Server 聯(lián)機(jī)叢書(shū)中的 "外圍應(yīng)用配置器".
因?yàn)镾QL2005默認(rèn)是沒(méi)有開(kāi)啟'Ad Hoc Distributed Queries' 組件,開(kāi)啟方法如下
代碼如下:
EXEC sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO
EXEC sp_configure 'Ad Hoc Distributed Queries', 1
GO
RECONFIGURE
GO
哈哈!就說(shuō)到這些把 這個(gè)比較簡(jiǎn)單 能對(duì)付一般的應(yīng)用了,因?yàn)橐话阌肊XCEL數(shù)據(jù)的都是公司內(nèi)部數(shù)據(jù)處理,所以完全夠應(yīng)付了,但是如果是商業(yè)化或者專業(yè)的網(wǎng)站讓任何普通用戶上傳EXCEL的話就不大合適了,畢竟你不能強(qiáng)烈要求所有用戶EXCEL的表的數(shù)據(jù)頁(yè)的名字都叫Teenie 呵呵,網(wǎng)上還有一種很麻煩的SQL語(yǔ)句(都是參數(shù)的形式)可以辦理這個(gè)問(wèn)題,呵呵 大家無(wú)妨去參考一下!
《MYSQL數(shù)據(jù)庫(kù)EXCEL數(shù)據(jù)上傳到SQL SERVER中的簡(jiǎn)單實(shí)現(xiàn)方法》是否對(duì)您有啟發(fā),歡迎查看更多與《MYSQL數(shù)據(jù)庫(kù)EXCEL數(shù)據(jù)上傳到SQL SERVER中的簡(jiǎn)單實(shí)現(xiàn)方法》相關(guān)教程,學(xué)精學(xué)透。維易PHP學(xué)院為您提供精彩教程。
轉(zhuǎn)載請(qǐng)注明本頁(yè)網(wǎng)址:
http://www.snjht.com/jiaocheng/11934.html