SYMPTOM
When using MySQL database as data warehouse in Strategy 10.x, only the first character is retrieved in report. By executing the report SQL directly against MySQL database, correct data returns. Example shows in below screenshot, character 'B', 'E', 'M', 'M' appears in the report grid, while the expected output is 'Books', 'Electronics', 'Movies', 'Music'.
CAUSEDefault value of "Character set encoding for Unix drivers" parameter is wrongly set for MySql database instance created from Strategy Developer. The default value is UTF-8, while for MySql database, the character set should be Non UTF-8.
ACTIONUnder Database Connections settings in Database Instance Editor, modify "Character set encoding for Unix drivers" parameter to be "Non UTF8". This can be done either in Developer or in Command Manager. The command line in Command Manager looks like below:
ALTER DBCONNECTION "xxx" UNIXCHARSETENCODING NONUTF8;
In additional, to avoid the issue from happening in the future, new changes are implemented to Strategy Developer 11.x and later versions. Default value for setting "Character set encoding for Unix drivers" has changed to "Non UTF-8" for following database types:
MySQL 5.x
Postgre SQL 9.x
Infobright 3.3.x/3.4.x
Infobright 4.x
Sybase IQ 15
Sybase IQ 15.1
Sybase IQ 15.2
Sybase IQ 15.3
Sybase IQ 12
Sybase IQ 12.7
SAP HANA 1.0 SPS 07
SAP HANA 1.0 SPS 08
SAP HANA 1.x
SAP HANA 2.x
MarisDB 5.x
MarisDB 10.x
MemSQL
Amazon Aurora
Amazon Aurora PostgreSQL Compatible
EnterpriseDB 9.x