Значение параметра изменено - ошибка ODBC 2169 - PullRequest
0 голосов
/ 04 апреля 2010

Спасибо за ваш ответ.

Я использую Powerbasic (www.powerbasic.com) в качестве компилятора и SQLTools в качестве стороннего инструмента для доступа к ADS через ODBC. Я должен указать, что эта ошибка также появляется, когда я выполняю другие действия, такие как Обновление, Удаление, Поиск и т. Д. Но я не получить эту ошибку, когда я использую MS Access.

Вот моя процедура сохранения:

Local sUsername As String
Local sPassword As String
Local sStatus As String
Local sSQLStatement1 As String

sUsername = VD_GetText (nCbHndl, %ID_FRMUPDATEUSERS_TXTUSERNAME)
If Trim$(sUsername) = "" Then
    MsgBox "Please, enter Username", %MB_ICONINFORMATION Or %MB_TASKMODAL, VD_App.Title
    Control Set Focus nCbHndl, %ID_FRMUPDATEUSERS_TXTUSERNAME
    Exit Function
End If

sPassword = VD_GetText (nCbHndl, %ID_FRMUPDATEUSERS_TXTPASSWORD)
If Trim$(sPassword) = "" Then
    MsgBox "Please, enter Password", %MB_ICONINFORMATION Or %MB_TASKMODAL, VD_App.Title
    Control Set Focus nCbHndl, %ID_FRMUPDATEUSERS_TXTPASSWORD
    Exit Function
End If

sStatus = VD_GetText (nCbHndl, %ID_FRMUPDATEUSERS_CBOSTATUS)

sSQLStatement1 =  "INSERT INTO [tblUsers] (Username, Password, Status) " + _
                 "VALUES ('" + sUsername + "','" + sPassword + "','" + sStatus +"')"

'Submit the SQL Statement to the database
SQL_Stmt %SQL_STMT_IMMEDIATE, sSQLStatement1

'Check for errors
If SQL_ErrorPending Then
    SQL_MsgBox SQL_ErrorQuickAll, %MSGBOX_OK
End If

С уважением,

1 Ответ

0 голосов
/ 06 апреля 2010

Я не знаком с Powerbasic и не смог найти пробную версию. Тем не менее, я думал об этом. Вы отметили, что проблема возникает с обновлением и удалением, а также с этим оператором вставки. Это заставляет меня поверить, что, возможно, устанавливается атрибут, указывающий, что оператор должен возвращать курсор, когда это не так. Однако это скорее дикое предположение.
Просвечивает ли трассировка ODBC какие-либо параметры, которые были изменены?

...