передача параметра из vbscript в хранимую процедуру оракула - PullRequest
1 голос
/ 06 августа 2010

Dim strConnection, conn, rs, strSQL, objCommand, param strConnection = "Driver = {Oracle ODBC Driver}; Источник данных = DSNNAME; Идентификатор пользователя = Имя пользователя; Пароль = пароль;"Установите conn = CreateObject ("ADODB.Connection") conn.Open strConnection

Dim cmdInsert As ADODB.Command
Set cmdInsert = New ADODB.Command
cmdInsert.ActiveConnection = conn
cmdInsert.CommandText = "sp_ins_test"
cmdInsert.CommandType = 4
cmdInsert.Parameters.Refresh

Set param = cmdInsert.Parameters
param.Append cmdInsert.CreateParameter("v_BG_EI_DEFECT_TYPE", 200, 1, 100, "abc")
param.Append cmdInsert.CreateParameter("v_BG_EI_APP_ID", 3, 1, 8, 1) 
param.Append cmdInsert.CreateParameter("v_BG_DETECTION_DATE", 133, 1, 100, 8/6/2010)

cmdInsert.Execute

Выдает ошибку преобразования символа в число, но я передаю в коде3 для целого числа (но тип данных - число в базе данных), а также для проходящей даты

Скажите, пожалуйста, как передать параметры дате и типу данных в Oracle ...

Ответы [ 2 ]

1 голос
/ 07 августа 2010

Я вижу по крайней мере эти проблемы:

  • Если скрипт действительно должен быть VBScript, то As ADODB.Command и New ADODB.Command недопустимы; они действительны только в VB. Вместо этого используйте CreateObject.
  • 8/6/2010 не является допустимым литералом даты, это целочисленное выражение с очень малым значением (почти 0); используйте вместо этого #8/6/2010#.

Надеюсь, это поможет.

0 голосов
/ 06 августа 2010

Вы передаете пустое значение strings в ваши параметры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...