Дело в следующем,
по DBI перекидываю Xbase'овую базу в MySQL
с одновременной перекодировкой из CP866 в CP1251, потом пишу
это в MySQL.
Там получается ЛАЖА!
На английском все ок (соотв-но), но с русским беда!
Причем перекодировка происходит нормально, специально все загонял в лог и смотрел.
В базе (mysql --status) в charset стоит latin1 (iso8859-1), нужно поставить cp1251 (win).
Как это сделать административно и как из SQL'a (как в ORACLE - где просто прописываешь переменные на данную сессию)?
By default, MySQL uses the ISO-8859-1 (Latin1) character set. To change the default set, use the --with-charset option:
shell> ./configure --with-charset=CHARSET
CHARSET may be one of big5, cp1251, cp1257, czech, danish, dec8, dos, euc_kr, gb2312, gbk, german1, hebrew, hp8, hungarian, koi8_ru, koi8_ukr, latin1, latin2, sjis, swe7, tis620, ujis, usa7, or win1251ukr. See section 4.6.1 The Character Set Used for Data and Sorting. If you want to convert characters between the server and the client, you should take a look at the SET OPTION CHARACTER SET command. See section 5.5.6 SET Syntax. Warning: If you change character sets after having created any tables, you will have to run myisamchk -r -q on every table. Your indexes may be sorted incorrectly otherwise. (This can happen if you install MySQL, create some tables, then reconfigure MySQL to use a different character set and reinstall it.) With the option --with-extra-charset=LIST you can define which additional character sets should be incompiled in the server. Here LIST is either a list of character set separated with space, complex to include all characters that can't be dynamically loaded or all to include all character sets into the binaries.