• ベストアンサー

MySQL Connector C++について

ttp://dev.mysql.com/doc/refman/5.1/en/connector-cpp.html MySQL Connector/C++についてなんですが、 Connector/Cでいう mysql_options(&mysql, MYSQL_SET_CHARACTER_NAME, "sjis") に相当するものは無いでしょうか? sjisで文字を扱いたいんですが…

質問者が選んだベストアンサー

  • ベストアンサー
  • yuu_x
  • ベストアンサー率52% (106/202)
回答No.1

MySQL Connector C++ は使ったことないのでなんとも言えませんが (DatabaseMetaData 辺りにありそうな気はします) おそらく、 SET NAMES 'sjis' [COLLATE 'collation_name'] 総等のことをしているので、もし見つからない場合は上で代用できると思います。 こいつは、入力、内部、出力を全て sjis にするという指定です。 巷で言われている、こいつを利用することによる脆弱性は、入力を sjis にセットしたにもかかわらず、sjis 以外のもので渡そうとすることにあります。(大半は意識せずに行っているため、脆弱性になりうる) sjis 以外を渡す場合は 個別に入力の文字コードを指定してください。 SET character_set_connection = 'UTF-8'; // など

okdanyon
質問者

お礼

出来ました。ありがとうございます。 set names 'sjis'のようなクエリは受け付けられないみたいで どうするか分かりませんでしたが、 metaあたりを見たら解決しました

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • yuu_x
  • ベストアンサー率52% (106/202)
回答No.2

ちなみに、ちょっとしたことなら下手に文字コードを指定するよりバイナリのやり取りで十分だったりしますが。

okdanyon
質問者

お礼

わかりました。ありがとうございます。

すると、全ての回答が全文表示されます。

関連するQ&A