• 締切済み

文字化け。

SQLPLUSを使用し、データをインサートしました。 そしてそのレコードを検索すると、全角スペース等がある場合、それ以降の文字が文字化けしてしまいます。 なお、ファイルからSQLスクリプトを実行しインサートした場合は正常でした。 どのデータベースに接続しても同じ結果で、別のマシンだと正常にできます。 私のPCに原因があるのだと思いますが、どこを確認したらよいかわかりません。 この件について理解されている方、よろしくお願い致します。

  • Oracle
  • 回答数1
  • ありがとう数0

みんなの回答

  • lond_nag
  • ベストアンサー率57% (4/7)
回答No.1

恐らくPCのキャラクタセットとDBのキャラクタセットが異なっている可能性が高いと思われます。 PCのレジストリエディタにて HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\{Oracleホーム} にある「NLS_LNAG」の値とを他のPCと比較して合わせてみてください。

関連するQ&A

  • 文字化け

    Windows7にxampp1.7.3をいれています。MySQLはSever version 5.1.41です。 my.iniは[mysqld][mysqldump][mysql]に default-character-set = utf8 を追加しました。 UTF-8でテーブルの作成(create文)とレコードの追加(insert文)を書いたテキストファイルを作り、 windowsのコマンドプロンプトから mysql -u root -p (パスワード) で入り、 source (上のテキストファイル); で読み込ませ実行し、phpでそのデータベースに接続して使おうとしました。 しかし、特定の文字だけ化ける現象が表れます。 上のsource (上のテキストファイル);を実行したときも、 1 row affected (0.00 sec)という中にいくつか(たぶん文字化けのところに) 1 warning (0.00 sec)が表れました。 化けた文字は「店」「局」「展」「 (全角スペース)」「く」などです。 それ以外の文字はPHPを使って見たときは正常に表示されます。 (もちろんコマンドプロンプトでselect文でテーブル表示したときなど 全部文字化けしますが) 自分では 店(E5BA97)、局(E5B180)、展(E5B195)、全角スペース(E38080)、く(E3818F)、から UTF-8で「E5B」「E38」から始まる文字が化けるように思っています。 そもそもsourceを使ってレコードを挿入する時に問題があると考えているのですが、 どのようにしたら解決するのでしょうか?

  • CGI(Perl)の文字化けについて

    WEBフォームからの入力データをHTMLに加工して表示するというシンプルなCGIプログラムなのですが、 全角スペースの後に全角カタカナが入ると、全角スペースの部分から後が文字化けしてしまいます。 他はきちんと表示されているのですが、全角スペースとカタカナが続いているのが良くないみたいで、文字化けしてしまうようです。 全角スペースを取ってしまえばいいのかと思い、WEBで検索して色々と試してみましたが、変わりません。。 このような場合はどういう対処をするのが一番いいのでしょうか。 文字コードはEUCを使っています。(WEBフォーム、CGIとも) 教えてください。よろしくお願いいたします。

    • ベストアンサー
    • CGI
  • 文字化け

    ORACLE(UNICODE)に対し、 SQL*PLUSから、(test.sql等)ファイルから insert文で'(1)'とう文字を入力しようとすると、 文字化けが発生します。 1)ORACLEにUNICODEで'(1)'という文字は登録可能でしょうか? 2)もし可能なら、どのような方法で可能でしょうか?(SQL*PLUSで) 以上、お願い致します

  • MySQL5.1の文字化け

    多くの方が同様の質問をされていたのですが、一致する問題が見つけれなかったので、ご存じの方がおられたら教えて下さいm(_ _)m (環境)  PHP 5.2.8 ZendFramework 1.5.1 から Pdo Mysqlを使用  文字コード:SJIS  Mysql 5.1  文字コード:EUC-JP (質問内容) 携帯の絵文字データをSJISのバイナリでスクリプト中に埋め込むため、スクリプトの文字コードをSJISに統一したところ、文字化けが発生しました。 SET NAMES SJIS のSQLを発行することで表示は正しくできるようなったのですが、新たにレコードを追加しようとすると文字化けが発生します。 例)情報 → 情表 insertを行う前の文字コードをSJIS,SJIS-win,EUCと変えてみましたが、SJISもしくはSJIS-winの場合は上記の例のとおりとなり、EUCにすると完全な文字化けとなりました... おそらく登録時にMYSQLがSJIS→UTF8→EUCに変換される時に正しく変換されていないものと思われるのですが、どなたか対処方法をご存じないでしょうか? よろしくお願いします。

    • ベストアンサー
    • PHP
  • phpMyAdmin内での文字化け

    サーバはさくらインターネットを利用してます。 レンタルサーバから専用サーバに移転したのですが、 専用サーバではphpMyAdminで日本語データの文字化けが起きます。 専用サーバのphpMyAdminからDB作成の際、下記の設定で行い、 MySQLの文字セット UTF-8 Unicode (utf8) MySQLの接続照合順序 utf8_unicode_ci DB の照合順序 utf8_unicode_ci レコードをINSERTする際、下記のように文字コードを指定し、 $sql=mb_convert_encoding($sql,"EUC-JP","EUC-JP"); execute_sql($con, $sql); 実行したら、phpMyAdmin内で日本語データが文字化けしました。 サイト内で表示しているDBデータ(日本語)は文字化けしませんでした。 DB の照合順序をutf8以外(ujis_japanese_ciなど)として、 DBを作った場合、レコードをINSERTしたら、サイト内のDBデータも phpMyAdmin内データもどちらも日本語が文字化けします。 また、レンタルサーバのphpMyAdminからDBデータをエクスポートして、 専用サーバのphpMyAdminからインポートした場合、 読み込むDBデータファイルの文字コードをUTF-8にしなければ、 phpMyAdmin内で日本語データが文字化けしてしまいます。 ただ、UTF-8にしてインポートしてもphpMyAdmin内では 文字化けしませんが、サイト内で表示しているDBデータは 文字化けします。 専用サーバのphpMyAdminから データを日本語の文字列に編集・更新したら、 phpMyAdmin内ではそのデータに関しては文字化けなく表示されますが、 サイト内ではそのデータは文字化けしてしまいます。 専用サーバ情報は下記の通りです。 【専用サーバ】 OS:CentOS 5 Apache 2.2.3 PHP5.1.6 DBサーバ:MySQL 5.0.77 アップしているファイルの文字コード:EUC 分かる方、ご回答、よろしくお願いいたします。

    • 締切済み
    • PHP
  • MySQLの文字化け

    WindowsServerでPHPとMySQLで作成したプログラムを動かしています。 PHPからINSERTでMySQLに登録すると環境依存文字(「(株)・(有)など)が「?」になってしまいます。 PHPからSELECTでブラウザ上に表示させると文字化けはしていませんが、phpMyAdminで確認すると「?」になっています。 このデータベースの内容を他のサーバーに移すときに、phpMyAdminからエクスポートまたはmysqldumpすると「?」のままエクスポートして、他のサーバーでインポートしても当然「?」になってしまいます。 環境依存文字が文字化けしない、あるいは他のサーバーでも環境依存文字をそのまま移行できるようにはできないでしょうか。 よろしくお願いします。 PHPはEUC-JP、データベースはujisで作成しています。 INSERTの直前でSET NAMES UJISを実行しています。

    • ベストアンサー
    • MySQL
  • 『予約』という文字を挿入すると文字化けしてしまいます。

    データベースはmySQLで、 コマンドプロンプトからinsert into ~ コマンドを 用いて、予約という文字を挿入すると、その予約という文字自体と、それ以降の 文字列が全て文字化けしてしまいます。 対処法はないのでしょうか? default-character-set=sjis で文字コードの指定は行っています。

  • Line Inputで文字化け(助けて下さい)

    素人な質問ですみません。 Line Input #fpFileNo, strMsgBuffA 上記手法により、txtファイルから1行ずつレコードを 取り出していますが、 先頭が”全角文字”のレコードを取り出すと 先頭文字が”文字化け”します。 正しく全角文字が取り出せる手法を教えてください。

  • phpMyAdminで文字化け

    下記の質問者と同じ状態「UTF8のPHPコードから日本語をINSERTするとphpMyAdmin上で文字化けしてしまう」になっています。 http://oshiete.nikkeibp.co.jp/qa3749280.html?ans_count_asc=1 そこでinsertの前に    $sql = 'set names utf-8';    mysql_query($sql); を挿入したいのですが、どこにどのように挿入したらいいのかわかりません。私の場合は以下のどこに挿入すればいいのでしょうか? // SQL実行 function db_query($sql, $conn) { $res = mysql_query($sql, $conn); return $res; } ~中略~ $sql = "INSERT INTO table1 ("; $sql .= " name, "; $sql .= " address, "; $sql .= " date "; $sql .= ") VALUES ("; $sql .= "'" . $name . "',"; $sql .= "'" . $address . "',"; $sql .= "'" . $date . "'"; $sql .= ")"; $res = db_query($sql, $conn); if ($res) { return "<p>成功</p>"; } else { return "<p>失敗</p>"; }

    • ベストアンサー
    • PHP
  • MySQLの文字化けについて

    お世話になります。 環境  XAMPP 2.5 OS XP-SP2 SQLを発行する画面で、インサート文を 発行すると、ダブルバイト文字が???と 文字化けをします。 これはXAMPPのどこの設定変更をするのでしょうか? これを文字化けさせない方法はあるのでしょうか?

    • ベストアンサー
    • MySQL