a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 數據庫 > Access > 正文

Access數據庫提示OleDbException (0x80004005): 操作必須使用一

2024-09-07 19:03:06
字體:
來源:轉載
供稿:網友

使用Access當數據庫時,這個問題郁悶了我好幾天啊![OleDbException (0x80004005): 操作必須使用一個可更新的查詢。]

說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以了解有關該錯誤以及代碼中導致錯誤的出處的詳細信息。

異常詳細信息: System.Data.OleDb.OleDbException: 無法從指定的數據表中刪除。

源錯誤:

行 37: comm.CommandText = sqlstr;

行 38: //comm.Prepare();

行 39: cout = comm.ExecuteNonQuery();

行 40:

行 41: conn.Close();

源文件: d:/SOVO驗收代碼/Base/App_Code/JetAccess.cs 行: 39

[OleDbException (0x80004005): 無法從指定的數據表中刪除。]

System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult) +267

System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult) +192

System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult) +48

System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method) +106

System.Data.OleDb.OleDbCommand.ExecuteNonQuery() +108

JetAccess.Execute(OleDbParameter[] parameters, String sqlstr) in d:/SOVO驗收代碼/Base/App_Code/JetAccess.cs:39

NewsData.DeleteNews(Int32 id) in d:/SOVO驗收代碼/Base/App_Code/NewsData.cs:29

_Default.GridView1_RowDeleting(Object sender, GridViewDeleteEventArgs e) in d:/SOVO驗收代碼/Base/System/Default.aspx.cs:46

System.Web.UI.WebControls.GridView.OnRowDeleting(GridViewDeleteEventArgs e) +133

System.Web.UI.WebControls.GridView.HandleDelete(GridViewRow row, Int32 rowIndex) +604

System.Web.UI.WebControls.GridView.HandleEvent(EventArgs e, Boolean causesValidation, String validationGroup) +1155

System.Web.UI.WebControls.GridView.RaisePostBackEvent(String eventArgument) +199

System.Web.UI.WebControls.GridView.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7

System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11

System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +174

System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5102

解決方法如下:

在數據文件*.mdb上右鍵打開屬性對話框,在'安全'標簽下需要添加IUSR_XXX(XXX為你的機器名),也就是添加Internet Guest Account帳戶,再將此帳戶的權限設為可讀,可寫.(原來這么簡單就解決了的問題,我靠:) )

如果在右鍵屬性對話框內找不到'安全'標簽,需要將文件夾選項下的視圖內的'使用簡單文件共享(默認)'的勾去掉.

原因:

有幾個主要的錯誤原因:

這個錯誤發生在當你的程序試圖執行更新數據庫或其它類似操作時。這是因為

ADO由于以下的幾個原因而不能夠寫數據庫造成的。

1。最普遍的原因是匿名用戶帳號(IUSR_MACHINE)對該數據庫文件沒有寫權限。

要解決這個問題,在管理器中調整數據庫文件的屬性,讓匿名用戶有正確的權限。

當使用ACCESS數據庫時,不僅要給文件寫的權限,還要給該目錄寫 的權限,因為

Jet需要在該目錄建立一個.ldb文件。

2。第二個原因是數據庫沒有使用正確的模式打開。應該使用下面的方法打開。

SQL = "UPDATE Products Set UnitPrice = 2;"

Set Conn = Server.CreateObject("ADODB.Connection")

Conn.Mode = 3 ''3 = adModeReadWrite

Conn.Open "myDSN"

Conn.Execute(SQL)

Conn.Close

注意默認的Mode是設置0(adModeUnknown),它是允許更新的。

3。還有可能是在ODBC管理器中將該DSN的只讀選項選中。

4。你是在同時更新兩個表中的字段,也會出現這個錯誤信息,解決辦法是分開來更新

這兩個表中各自字段。

5。當你使用了一個從低版本中(如ACCESS2.0,ACCESS7.0)載入到高版本(ACCESS 2000)

中的查詢時,在執行這個查詢是會出現該錯誤。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美蜜桃精品久久久久久 | 国产欧美精品一区二区三区四区 | 日本www高清 | 精品www | 久久午夜视频 | 精品视频一区二区在线观看 | 一区二区在线免费观看 | 一区二区三区四区在线视频 | 国产精品视频1区 | 91.成人天堂一区 | 狠狠色视频 | 伊人网站在线 | 欧美在线一区二区三区 | 久久va | 国产真实精品久久二三区 | 日本aⅴ免费视频一区二区三区 | 国产精品一区二区三区四区在线观看 | 欧美成人一区二 | 欧美 日韩 亚洲 一区 | 中文字幕在线观看免费视频 | 日本精品二区 | 久久涩涩 | 亚洲狠狠爱 | 污网站在线免费看 | 精品日韩一区二区三区 | 日本欧美久久久久 | 美女又爽又黄免费视频 | 久久精品欧美一区二区三区不卡 | 黄色网在线 | 国内外成人在线视频 | xnxx 美女19| 成人三级av | 中文字幕第二十六页页 | 免费看h| 国产一区在线看 | 中文字幕亚洲欧美精品一区四区 | 国产欧美综合一区 | 日韩久久久久久久久久久 | 欧美午夜一区二区 | 欧美激情在线狂野欧美精品 | 欧美久久久久久久久中文字幕 |