AS400 IT備忘録

AS400/IBMi DBCSでないフィールドの文字化け

投稿日:

PHPでデータを引っ張る際、お決まりの

 

 

をしているのだが、今回引っ張った文字がなぜか文字化けしていた。

 

なんだろなと思って見ていたら、2バイト文字が文字化けしているようだ。

 

普通は上記の呪文を使えばちゃんと変換されるはずなのだが、なんだろなと思って調べてみる。

 

でも何度調べても原因がわからない。別のカラムの文字はちゃんと表示しているのに、このカラムだけ文字化け。謎だ・・。

 

で調べること10分ほど。テーブルを作るときこのカラムだけDBCS(日本語専用フィールド)にしていなかったのが原因みたい。

 

いわゆるオープンフィールドと言われる、テーブルを作るときにカラムに指定するOの文字。

 

これを付けていなかったから2バイトで1文字で扱われなかったみたい。

 

これ、テーブルを作り直せばいいのだろうけど、作り直すのって面倒だなと思って調べていたら、いいのがあった。

 

SQLのときにCASTという呪文使えば直ったので備忘録として載せておきます。

 

 

これでうまくいった。めでたしめでたし。

スポンサーリンク




スポンサーリンク




-AS400, IT備忘録

執筆者:


comment

Your email address will not be published. Required fields are marked *

関連記事

Linux CentOS サーバコマンド 備忘録

PHPのバージョンを調べる

  インストールされてるPHPを調べる [crayon-5dd0ac14e92580019483 …

FTPのバッチを作る

自分の備忘録です。間違ってるかもしれませんし大した内容ではありません。   バッチはテキストファイルにPUTやGETなどのコマンドを書いて、それを呼び出すバッチプログラムを拡張子を.batに …

XAMPPのPHPでメール送信する

どこを調べてもPHPでメールを送るのは簡単だ。と、ドヤ顔でこんなソースを載せている。それは解ったんだけど、mb_send_mailが使えないんだよ。とブツブツ言いながら調べてphp.iniを直したりな …

AS400/IBMi 長いカラムを途中で折り返しで表示する

長いカラムを画面表示で端で折り返すのは自動的にAS400がやってくれる。同じ長さのカラムをDDS に用意すればいい。 ただ、このやり方では一番右端まで表示してから折り返すことになる。これを途中で折り返 …

AS400/IBMi シンクライアントを132画面対応にする設定

シンクライアントとは必要最低限の機能しかもたず、処理はすべてサーバ側でまかなうようにする端末のこと。 PCのクライアントアクセスとは使い勝手が少々異なるので設定に困った。 エミュレーションタイプの画面 …

Adsense広告


文字で検索

人気記事

なぜだか人気記事

読んでほしい順に