以前日本語も入力できた社内データベースの一つが、
今回仕様変更によって英語(いわゆる1バイト文字のみ)のみ対応となり、
それ以前に日本語で入力したデータが全て下記のように文字化けするようになってしまいました。
—LBƒM.“à‘¤‚Ƀ쳌¬ŽRAƒnEO‚Ì^ƒ‚é쳌쳌Wƒ“ƒoƒŠ‚ª
(解読されては困るので、ランダムに並べ替えています)
現在ブラウザ上でUTF-8で表示されていることは分かりますが、
実際のデータベースの中でどの文字コードが使われているか、
また昔のデータベースの中の日本語が、
EUCやS-JISなど、どの文字コードで保存されていたのかなどはわかりません。
(担当したシステム会社は、いろいろ尋ねても何もしてくれません)
私自身プログラミングである程度のエンコード経験はありますので、
多少専門的なこともがんばって理解する覚悟があります。
もし今の暗号のような文字列を、
元の日本語に戻す方法があれば教えてくださいませ。
データベース本体までもがリプレースされてしまっているとすれば、移行の際に欠落などが発生している可能性がありますので、完全復元は難しいかもしれません
データ移行で欠落が発生していない場合でも、システム内部で同じく欠落が発生している可能性があります
下記のように調べる方法もありますが、ブラウザのエンコードを適当に替えてみるというような事は既に行われたことだと思いますので、調べるまでもないことかもしれません
http://www.bugbearr.jp/?%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%...
解読されては困ることですから、文章としては表に出せないでしょうし、コード変換を試みるためには大量のデータが必要だったりもしますので、掲示板経由で完全対応することはまず無理です
希望的ものになりますが、コード0001で検索して出てくるのは「近藤」のように元の文字がわかっているものはないでしょうか?
連続した文字列では無理であっても、特定のパターンを抽出することが出来たならば解決につながるかもしれません
DBMSの名前とか欲しいところですが、
以前、ふるーいマシンでpostgresが動いていて、
asciiで作ってあるDBにsjisで書き込んでいて、
普通にdumpすると全滅なものを取り扱った時は、
古いほうのサーバからdumpしたデータを
phpでしたが一行ずつmb_convert_encodigして対応しました。
幸いにもうまくいってよかったのですが、正直、ケースバイケースです。
新しいシステムへの移行ってのがあったのではないかと思いますが、
切り戻してもらえないものですかね。
データが保全されていないのはマズイのではと思いますが。
新しいシステムを作成したところも返事無しですか?
お金に関わるところなので契約をみたほうがいいと思います。
データベース本体までもがリプレースされてしまっているとすれば、移行の際に欠落などが発生している可能性がありますので、完全復元は難しいかもしれません
データ移行で欠落が発生していない場合でも、システム内部で同じく欠落が発生している可能性があります
下記のように調べる方法もありますが、ブラウザのエンコードを適当に替えてみるというような事は既に行われたことだと思いますので、調べるまでもないことかもしれません
http://www.bugbearr.jp/?%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%...
解読されては困ることですから、文章としては表に出せないでしょうし、コード変換を試みるためには大量のデータが必要だったりもしますので、掲示板経由で完全対応することはまず無理です
希望的ものになりますが、コード0001で検索して出てくるのは「近藤」のように元の文字がわかっているものはないでしょうか?
連続した文字列では無理であっても、特定のパターンを抽出することが出来たならば解決につながるかもしれません
データベースの製品名も分からないし、「英語(いわゆる1バイト文字のみ)のみ」と仰るカラムの型も分からないようでは、答えようがない。
運良く8ビット・データとして格納されたままであり、データベース名が分かればコンバートする方法はある。
データベースというのは通常5箇所くらい文字コードを設定するところがあります。表示がascciでも、格納がuft-8(多くはそう)なら大丈夫です。本当に変換されてしまっていたら、復元は無理だと思います。http://www
コメント(0件)