23.07.2016 08:44, Geoff Worboys wrote: > Ergo: the character set of the parameters to an EXECUTE BLOCK > come from the attachment character set and NOT from the > declared character set. > > You say "of course, parameters are converted to client charset" > but this is both far from obvious and contrary to the > documentation.
You are confused by what a parameter is. Look: "Param1" VARCHAR(80) CHARACTER SET WIN1252 = ? "Param1" is a PSQL parameter while ? is a DSQL parameter. The latter is filled by your application and assigned to the former inside the engine. Adriano was speaking about the latter. You declare the datatype of the PSQL parameter, but the DSQL parameter is always described using the attachment charset, because user applications explicitly specify the attachment charset to process all input and output data -- this is a contract the engine cannot ignore. You want to pass one parameter as UTF8 and another one as WIN1252, then use NONE as the attachment charset and handle everything yourself. Dmitry ------------------------------------------------------------------------------ What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic patterns at an interface-level. Reveals which users, apps, and protocols are consuming the most bandwidth. Provides multi-vendor support for NetFlow, J-Flow, sFlow and other flows. Make informed decisions using capacity planning reports.http://sdm.link/zohodev2dev Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel