PRB: Chyba typu VBScript "nesoulad typů", pokud je typ pole adNumeric

Příznaky

Když provádíte číselné porovnání nebo výpočet s typem pole adNumeric (131) pomocí jazyka VBScript, můžou být vrácené následující chyby:

Chyba Microsoft VBScript Runtime Error ' 800a000d ' Neshoda typů

Chyba Microsoft VBScript Runtime Error ' 800a01ca ' používá typ automatizace, který není podporován v jazyce VBScript

Příčina

K chybám dochází, protože jazyk VBScript nemůže správně převést hodnoty adNumeric na platný číselný typ.

Řešení

Můžete použít jedno z následujících dvou možných řešení:

  • V následujícím příkladu převeďte pole adNumeric pomocí funkce CDbl () (nebo funkce CInt ()):

       <%@ LANGUAGE="VBScript"%>   <%   Set oConn = Server.CreateObject("ADODB.Connection")   oConn.Open "MyDSN", "MyUserID", "MyPassWord"   set oRS = oConn.Execute("Select list_price FROM DEMO.PRICE")   Response.Write("List Price * 100 = " & CDbl(oRS("list_price")) * 100)   %>

    ,

  • Použijte JScript, protože jazyk JScript toto chování nezobrazuje.

Další informace

Kroky pro reprodukci chování

Následující kód vykazuje uvedenou chybu:

<%    Set oConn = Server.CreateObject("ADODB.COnnection")    oConn.Open "MyDSN", "MyUserID", "MyPassWord"    set oRS = oConn.Execute("Select list_price FROM DEMO.PRICE")    'This is the bad line of code, "list_price" is being returned as    'type adNumeric.    Response.Write("List Price * 100 = " & oRS("list_price") * 100)    %>

Potřebujete další pomoc?

Rozšiřte své znalosti a dovednosti
Projít školení
Získejte nové funkce jako první
Připojit se k programu Microsoft Insider

Byly tyto informace užitečné?

Děkujeme za váš názor!

Děkujeme vám za váš názor! Pravděpodobně bude užitečné, když vás spojíme s některým z našich agentů podpory Office.

×