Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Parametrized update command
Message
From
02/04/2019 16:21:45
 
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
01667828
Message ID:
01667850
Views:
45
>>>>>Hi,
>>>>>
>>>>>I am testing a parameterized update command (for SQL Server database) and having a problem. Here is my code:
>>>>>
>>>>>cSqlUpdate = "update mytable set field1 = ?" + cNewFld1Val + ", field2 = ?" + cNewFld2Val + " where pk = 10"
>>>>>lnResult = SQLEXEC( nSqlHandle, cSqlUpdate)
>>>>>
>>>>>I get a prompt to enter a value (as if I didn't specify the values cNewFld1Val or cNewFld2Val.
>>>>>Is this possible because the value of cnewFld2Val has a question mark ("?")?
>>>>>
>>>>>TIA
>>>>
>>>>cSqlUpdate = "update mytable set field1 = ?cNewFld1Val , field2 = ?cNewFld2Val where pk = 10"
>>>>lnResult = SQLEXEC( nSqlHandle, cSqlUpdate)
>>>
>>>Do the variables cNewFld1Val and cNewFld2Val have to be Private? I have them Local and they are in scope with the above command. But I am not getting results I expect. So, I thought maybe this is the problem.
>>>Please let me know. Thanks.
>>
>>Yes, this is the only case I know of where you need to declare the variables as private.
>
>I was just surprise that I was not getting an error. And the SQL Server does get updated and, from the cursory look, the values in the SQL table are equal to the Locally declared variables. I trust that you and Naomi know what you are talking about. Just find it strange.

As Dragan says, undeclared variables are private by default. I always declare my variables, it's a part of my BeautifyX setup. It has saved my day many times.
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform