This is require for implementing prepared statement, because binary protocol depends more
on the result field type to decode value, we have to correctly set the result field type.
For statement like 'select ?', the type of the field is unknown until we execute the statement with argument,
If the field type of parameter marker `?' is not set properly, client will not be able to read the value.