關於EXCEL資料上傳到SQL SERVER中的簡單方法!

來源:互聯網
上載者:User

EXCEL資料上傳到SQL SERVER中的方法需要注意到三點!

注意點一:要把EXCEL資料上傳到SQL SERVER中必須提前把EXCEL傳到伺服器上.

做法: 在ASP.NET環境中,添加一個FileUpload上傳控制項

後台代碼的E.X:
                  if (FileUpload1.HasFile)     //如果使用者確實選擇了上傳控制項的瀏覽按鈕,瀏覽檔案成功.
                  {
                   this.FileUpload1.SaveAs("E:\\Temp\\" + FileUpload1.FileName);  //儲存到伺服器的目錄,需要根據伺服器具體情況修改FileUpload1.FileName會自動擷取上傳檔案名稱.

                  }
                 //OK成功上傳到伺服器的E:\Temp目錄下(自己寫的時候注意錯誤處理,和異常處理啊,很重要的).

注意點二: SQL SERVER 伺服器中的表的結構(欄位)要與要上傳來的EXCEL格式順序等相同.

儲存到伺服器的關鍵代碼如下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 中的資料接受表,hdr=yes 表示EXCEL內容第一行作為內容欄位而不是欄位列
   Teenie是我EXCEL的當前頁的名稱(注意這個一定要寫對,否則的話會出錯,另外要在名字後面家$這個東西)
  
解除SQL阻止:
SQL Server 阻止了對組件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的訪問,因為此組件已作為此伺服器安全配置的一部分而被關閉。系統管理員可以通過使用 sp_configure 啟用 'Ad Hoc Distributed Queries'。有關啟用 'Ad Hoc Distributed Queries' 的詳細資料,請參閱 SQL Server 聯機叢書中的 "介面區配置器"。
因為SQL2005預設是沒有開啟'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

哈哈!就說到這些把 這個比較簡單 能對付一般的應用了,因為一般用EXCEL資料的都是公司內部資料處理,所以完全夠應付了,
但是如果是商業化或者專業的網站讓任何普通使用者上傳EXCEL的話就不大合適了,畢竟你不能強烈要求所有使用者EXCEL的表的
資料頁的名字都叫Teenie 呵呵,網上還有一種很麻煩的SQL語句(都是參數的形式)可以解決這個問題,呵呵 大家無妨去參考一下!

【處理這類問題,重點的不是上傳和實現技術,而是錯誤處理,任何失誤都會導致資料遭到XX呵呵】

新人都加油!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.