萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> asp編程 >> asp 開發應用中錯誤收集參考文檔

asp 開發應用中錯誤收集參考文檔

  開發應用中錯誤收集參考文檔

  錯誤類型:

  adodb.field (0x800a0bcd)

  bof 或 eof 中有一個是“真”,或者當前的記錄已被刪除,所需的操作要求一個當前的記錄。

  原因:你在利用sql查找數據庫教程的記錄時,查找結果為空,而且你沒有對空記錄的情況做出處理。

  解決:1 如果你不相信查找結果為空,那你應該考慮你的sql語句是否正確;2 如果確實有空的情況,那你應該添加”if rs.eof then”或者”do while not rs.eof”之類的語句,對eof的情況進行處理。

  錯誤類型:

  (0×80020009)

  發生意外。

  原因:也是在利用sql查找數據庫記錄時,查找結果為空,而且你在後面的代碼中調用了rs(“aa”)之類的記錄

  解決:要麼同上,加上rs.eof的判斷和處理,要麼就是你的sql語句有誤,導致記錄查不出來,也就無法在後來使用rs(“aa”)的記錄了。

  錯誤類型:

  active server pages, asp 0126 (0×80004005)

  找不到包含文件 ‘xxx.asp'。

  原因:就如錯誤提示所說,不存在這個包含文件。

  解決:如果你確定有這個文件,那麼就是你的路徑寫錯了,比如說其實他相對於網站根目錄的路徑應該是inc/xxx.asp,那麼include裡面就應該寫inc/xxx.asp,而不僅僅是xxx.asp。附:include的寫法是:

  錯誤類型:

  microsoft ole db provider for odbc drivers (0×80004005)

  [microsoft][odbc microsoft access driver] 操作必須使用一個可更新的查詢。

  原因:這個在xp服務器上非常常見,屬於服務器的配置問題,或者說是用戶的權限問題。

  解決:如果僅僅是在本機上調試出現的錯誤,則右鍵點擊網站所在的文件夾,點擊”共享和安全…”,在”安全”中點添加…,寫入everyone,然後再使這個用戶的權限為所有,即除了第一個外全部打勾,確定之後再刷新就可以用了。(注:如果找不到“安全”選項,則在任意一個文件夾下點擊“工具”,然後是“文件夾選項”--“查看”,在“使用簡單文件共享”一欄把勾去掉即可)

  錯誤類型:

  microsoft vbscript 編譯器錯誤 (0x800a0401)

  語句未結束

  原因:語法錯誤。

  解決:按系統所提示的行來檢查。如果提示的恰好是本頁的最後一行,則很有可能是if語句忘記寫”end if”啦,select語句忘記寫”end select”啦,總之是需要end的地方沒有end,導致服務器找不到語句的結尾,只好在最後一行顯示錯誤。

  錯誤類型:

  microsoft jet database engine (0x80040e10)

  至少一個參數沒有被指定值。

  原因:在寫sql語句的時候,我們經常會調用一些參數,很可能這些參數中有一個沒有被賦值。

  解決:檢查每一個參數的值是否真的傳遞過來了,很可能有些參數其實是”",這樣的參數去索引數據庫當然是不行的。

  錯誤類型:

  microsoft jet database engine (0x80040e37)

  microsoft jet 數據庫引擎找不到輸入表或查詢 ‘aa'。 確定它是否存在,以及它的名稱的拼寫是否正確。

  原因:不存在這個表。

  解決:應該是你寫錯了表名,或者連錯了數據庫?再仔細核對一下吧!

  錯誤類型:

  microsoft vbscript 運行時錯誤 (0x800a000d)

  類型不匹配: '[string: ""]”

  原因:是因為你的變量的類型是字符串型的,而你卻當作數字或者其他類型來使用。

  解決:比如你需要數字的變量用來計算i=i+1等數學運算,那麼應該在變量上使用cint(變量名),強制轉換為數字型,兩個變量之間作比較也一定要是相同的類型,因此也需要轉換,方法同上。

  錯誤類型:

  microsoft jet database engine (0x80040e07)

  標准表達式中數據類型不匹配。

  原因:一般也是在寫sql語句時發生了錯誤,即把數字型和字符串型的變量混淆了。

  解決:很好辦,試一試把sql中變量加了”的去掉單引號,或者把原先認為是數字的加上”,再查看效果。

  錯誤類型:

  microsoft vbscript 運行是錯誤(0x800a01a8)

  缺少對象:”

  原因:很有可能是你沒有對rs對象進行定義。

  解決:別忘了寫set rs=server.createobject(“adodb.recordset”),這樣可以定義對象;或者直接不用這種寫法,直接用conn.execute(“sql”)這樣會方便得多,也不用考慮對象問題。

  錯誤類型:

  microsoft vbscript 運行時錯誤 (0x800a005e)

  無效使用 null: ‘replace'

  原因:無效使用函數的情況也比較多見,包括split等,這個道理也比較簡單,就是因為你replace的內容是空的。

  解決:最好加一句if檢驗一下你要replace的內容是否為空。

  microsoft vbscript 編譯器錯誤 錯誤 '800a03f6′

  odbc 驅動程序不支持所需的屬性。

  原因:可能是因為沒有sql語句裡出現的字段名,一般為字段名或sql關鍵字書寫錯誤。也有可能是sql所要打開的表已經被獨占打開。

  解決方法:檢查sql語句裡出現的每個字段名,和每個關鍵字

  microsoft ole db provider for odbc drivers 錯誤 '80004005′

  機器 ‘hdzc-3jqskbwo02′ 上的用戶 ‘admin' 以獨占方式的鎖定數據表'order_detail'。

  原因:sql所需的表被access以表設計形式打開著

  解決方法:關閉表設計

  microsoft vbscript 編譯器錯誤 錯誤 '800a03f6′

  在對應所需名稱或序數的集合中,未找到項目。

  原因:沒有sql語句裡出現的字段名,一般為字段名或sql關鍵字書寫錯誤

  解決方法:檢查sql語句裡出現的每個字段名

  adodb.recordset 錯誤 '800a0e78′

  對象關閉時,不允許操作。

  原因:在rs.open sql,conn,3,3語句之前使用了rs.close關閉了rs對象

  解決方法:去掉之前的rs.close

  microsoft ole db provider for odbc drivers 錯誤 '80040e14′

  [microsoft][odbc microsoft access driver] 語法錯誤 (操作符丟失) 在查詢表達式 ‘oid form classtree where oid = 25′ 中。

  原因:在sql語句中存在非法書寫的英文關鍵字或子段錯誤

  解決方法:把sql語句打出來,然後逐個單詞對照,查找出書寫的錯誤

  操作要求一個可更新的查詢

  答:看看庫文件是不是只讀了。

  答2:經過排序(order by) 的記錄集(rs)不允許有更新操作(rs.update)

  3219 操作在該內容中不被允許

  答3:數據庫字段屬性是否設置為允許空值插入。

  aderrinvalidargument 3001

  0x800a0bb9

  應用程序使用的參數其類型錯誤、超出可接受的范圍或者與其他參數沖突。

  aderrnocurrentrecord 3021

  0x800a0bcd

  bof 或 eof 為 true,或者當前記錄已經刪除。應用程序請求的操作需要當前記錄。

  aderrillegaloperation 3219

  0x800a0c93

  應用程序請求的操作不允許出現在該上下文中

  aderrintransaction 3246

  0x800a0cae

  在事務中應用程序無法顯式關閉 connection 對象。

  aderrfeaturenotavailable 3251

  0x800a0cb3

  提供者不支持應用程序請求的操作。

  aderritemnotfound 3265

  0x800a0cc1

  ado 無法在對應於應用程序請求的名稱或順序引用的集合中找到對象。

  aderrobjectincollection 3367

  0x800a0d27

  無法追加,對象已經在集合中。

  aderrobjectnotset 3420 0x800a0d5c 應用程序引用的對象不再指向有效的對象。

  aderrdataconversion 3421

  0x800a0d5d

  應用程序使用了不符合對當前操作的值類型。

  aderrobjectclosed 3704

  0x800a0e78

  如果對象關閉,則不允許應用程序請求的操作。

  aderrobjectopen 3705

  0x800a0e79

  如果對象打開,則不允許應用程序請求的操作。

  aderrprovidernotfound 3706

  0x800a0e7a

  ado 找不到指定的提供者。

  aderrboundtocommand 3707

  0x800a0e7b

  應用程序無法用 command 對象將 recordset 對象的 activeconnection 屬性更改為它的來源數據。

  aderrinvalidparaminfo 3708

  0x800a0e7c

  應用程序錯誤地定義了 parameter 對象。

  aderrinvalidconnection 3709

  0x800a0e7d

  應用程序通過引用關閉或無效的 connection 對象來請求對對象的操作。

  adodb.field 錯誤 '80020009′ bof 或 eof 中有一個是“真”,或者當前的記錄已被刪除,所需的操作要求一個當前的記錄。

  解決如下:這個錯誤是因select、delete的記錄不存在,或者庫中沒有記錄所

copyright © 萬盛學電腦網 all rights reserved