The following types of commands take parameters:
A language command, when the command text contains variables
An RPC command, when the stored procedure takes parameters
A cursor declare command, when the body of the cursor contains host variables or when some of the cursor’s columns are for update
A cursor open command, when the body of the cursor contains host language parameters
A cursor update command if the text of the update statement contains variables
A message command
A dynamic SQL execute command
An application calls ct_param or ct_setparam once for each parameter a command requires. These routines perform the same function, except that ct_param copies a parameter value, while ct_setparam copies the address of a variable that contains the value. If ct_setparam is used, Client-Library reads the parameter value when the command is sent. This allows the application to change the parameter values that were specified with ct_setparam before resending the command.