報錯內容:
Operation must use an updateable query
//連接Excel數據庫,注意IMEX=1時不能插入與更新~~~~~~~~~~去掉它~~~~~~~~~~~~~~
- Private filename As String = Server.MapPath(".") + "test.xls;Extended Properties='Excel 8.0;HDR=yes;IMEX=1'"
- Dim constr As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filename
特別注意
Extended Properties='Excel 8.0;HDR=yes;IMEX=1'
A: HDR ( HeaDer Row )設置
若指定值爲Yes,代表 Excel 檔中的工作表第一行是欄位名稱
若指定值為 No,代表 Excel 檔中的工作表第一行就是資料了,沒有欄位名稱
B:IMEX ( IMport EXport mode )設置
IMEX 有三種模式,各自引起的讀寫行爲也不同,容後再述:
0 is Export mode
1 is Import mode
2 is Linked mode (full update capabilities)
我這裏特別要說明的就是 IMEX 參數了,因爲不同的模式代表著不同的讀寫行爲:
當IMEX=0 時爲“匯出模式”,這個模式開啓的 Excel 檔案只能用來做“寫入”用途。
當 IMEX=1 時爲“匯入模式”,這個模式開啓的 Excel 檔案只能用來做“讀取”用途。
當 IMEX=2 時爲“連結模式”,這個模式開啓的 Excel 檔案可同時支援“讀取”與“寫入”用途。
看完這些大家就不用再說我的寫如爲什麼有問題了吧。我將連接改爲如下: