12、類型不匹配(一下午的教訓)
Microsoft VBScript 運行時錯誤
錯誤 '800a000d'
類型不匹配
/shop/Present.asp,行 24
錯誤源代碼如下:
Session("ProductPriceList") = Trim(Request.Form("DY_price"))
Session("ProductNumList") = Trim(Request.Form("PNAmount"))
ProductPriceList = Session("ProductPriceList")
ProductNumList = Session("ProductNumList")
ProductPriceList = Split(ProductPriceList,",")'-------------產品ID數組 注意這里,此變量已經變成了數組類型,應該使用PriceListArray
NumListArray = Split(ProductNumList,",")'-------------產品數量數組
??? Response.Write("<br>")
??? Response.Write ProductPriceList(0)
??? If Len(ProductPriceList) = 0 OR Len(ProductNumList) = 0 Then
原因:低級錯誤,變量混淆
?
13、沒有打開數據庫連接
ADODB.Recordset
錯誤 '800a0bb9'
參數類型不正確,或不在可以接受的范圍之內,或與其他參數沖突。
/shop/Present.asp,行 45
就是沒有<!--#include file="../Conn.asp" -->
14、函數內彈出窗口
'======================設置:修改付款方式(開始)========================
Sub OperateModify(TypeId)
??????? If Trim(Request("DyTypeName"))="" Or Trim(Request("Discount"))="" Or Trim(Request("OrderID"))="" Or IsNull(Request("DyTypeName"))=True Then
??????? ???
Response.write("<script language='javascript'>alert('不能為空');window.location='Shop_payment_manage.asp';</script>")
’使用這句就OK
??????? ???
'Response.Redirect("Shop_payment_manage.asp")
’關鍵是有時候使用的是這句,所以有時候不彈出窗口
??????? ??? Response.End
??????? End If
End Sub
'======================設置:修改付款方式(結束)========================
15、數據類型錯誤
Microsoft OLE DB Provider for ODBC Drivers
錯誤 '80040e57'
[Microsoft][ODBC SQL Server Driver][SQL Server]將 numeric 轉換為數據類型 numeric 時發生算術溢出錯誤。
/shop/Order.asp,行 56
16、
多步
OLE DB
操作產生錯誤
Microsoft OLE DB Provider for SQL Server
錯誤
'80040e21'
多步
OLE DB
操作產生錯誤。如果可能,請檢查每個
OLE DB
狀態值。沒有工作被完成。
引起這個問題的原因簡單的說就是數據庫的字段類型不匹配或者字符個數超出了數據庫的字段的最大限制個數。
? 1>
自動編號字段的就不應該指定值;
? 2>
限制
50
個字符的字段你就不應該提交多于
50
個字符的字符串
? 3>
記錄沒有向下移動。
???????????? OrderSql2 = "Select * From PE_OrderFormItem Where OrderFormID="&OrderFormID*1
????????????? Set OrderRs2 = Server.CreateObject("ADODB.RecordSet")
????????????? ?????? OrderRs2.Open OrderSql2,Conn,1,3
????????????? ?????? Do While Not OrderRs2.Eof
???????????????????? ?????? OrderRs2.Delete
????????????? ??????
OrderRs2.MoveNext
?????????????
?????? Loop
?????? ?????? OrderRs2.Close
????????????? Set OrderRs2 = Nothing