Oracle
 sql >> база данни >  >> RDS >> Oracle

Грешка:Типът параметър не се поддържа в кода на ADODB на класическия ASP

Актуализация: - Очевидно след малко проучване (тъй като не работя с Oracle) ADODB не поддържа adVariant (което е 12 ) и трябва да използвате adVarChar (което е 200 ) вместо това.

Вижте A:Класически ASP, извикващ съхранена процедура на Oracle с драйвер OraOleadb

Оставяме останалата част от отговора по-долу, тъй като вероятно все още е уместен, след като този проблем бъде коригиран.

Причината за тази конкретна грешка обикновено е несъответствие на типа данни, след като ADODB говори с доставчика, дефиниран от връзката.

Просто гледам дефиницията на процедурата в Oracle в сравнение с вашата ADODB.Command виждам, че p_return параметърът изглежда неправилен. Говоря за това в предишен отговор към подобен въпрос .

Според Mapping на типове данни (страхотен ресурс за картографиране на типове данни в ADO) adInteger (което е 3 ) картографира към Int в Oracle не Number . Вместо това трябва да използвате adNumeric (което е 131 ) което трябва да коригира тази конкретна грешка.

Опитайте да промените този ред

strcmd2.Parameters.Append strCmd2.CreateParameter("p_return", 3, 2)

до

strcmd2.Parameters.Append strCmd2.CreateParameter("p_return", 131, 2)

Полезни връзки




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да получите последния ден от месеца в Oracle

  2. pl/sql - Използване на динамична заявка в съхранена процедура

  3. Какво точно означава trunc(date, 'IW')?

  4. java.sql.SQLException:ORA-01652:не може да се разшири временен сегмент с 128 в таблично пространство TEMP (дори след разширяване)

  5. как да обединя повече от две колони в plsql developer?