[前][次][番号順一覧][スレッド一覧]

mysql:1602

From: <takeshi@xxxxxxxxxx>
Date: Thu, 17 Feb 2000 15:19:50 +0900
Subject: [mysql 01602] Re: MS-ACCESS で入力した改行コードは LF に変換されるか?

At Wed, 16 Feb 2000 10:49:36 +0900,
Isamu Narimatsu <isamu@xxxxxxxxxx> wrote:
> 
> 成松です。
> 以前MS-ACCESSを使ってMySQLにデータを入力していたのですが、改行コードの問題に
> 悩まされていました。
> MS-ACCESSのフォームで改行コードを含む文字を入力し、一回とじ、再度、MS-ACCESS
> から、入力しようとすると改行部分だけ文字化けしていたのでした。
> 確か、文字化けは「・」か「\n」な感じだったとおもいます。
> つまり、ODBC経由でMySQLに改行コードが入る段階、また呼び出される段階でうまく
> 改行されていなかったのだと思います。
> また反対にMySQLのDOSの画面から、改行コードを含んだ文字を入力すると、改行文字
> が「・」になります。

こちらでは再現しませんでした。
実験環境は
Server :
 Linux MySQL-3.22.32 --with-charset=ujis
 Linux MySQL-3.22.23 --with-charset=sjis
 Windows98 MySQL-3.22.30 (SJIS)
クライアントは :
 Windows98 + MS-Access97
 MyODBC-2.50.25 EUC と SJIS
 MySQL-3.22.30 付属のクライアント(mysqlコマンド)

作ったテーブルとデータは:

CREATE TABLE ttt (
  a int(11),
  d datetime,
  c varchar(50)
);

INSERT INTO ttt VALUES (1,NULL,'あ\r\nい');
INSERT INTO ttt VALUES (2,NULL,'い\r\nうえお');
INSERT INTO ttt VALUES (3,NULL,'かき\r\nくけこ');

これは、一度テーブル構造を MSAccess 上で作成し、テーブルをまず
MySQL サーバーに Export.
その後、MS-Access 上で、値を入力。
値の入力時には、改行は、[ctrl]-[enter] キーで入力
mysql コマンドで値を入力する時には、値に改行を入れる場合は、
そのまま [enter] キーで入力。

ODBC のトレースを取るようにすると、MS-Access のクエリが見れます。
また、MySQL サーバー(mysqld)を --log オプションで起動すれば、
クエリがサーバー側のログファイルに記録されます。
サーバーに飛んできた時点でクエリが壊れていれば、
MySQL サーバーのログファイルに、それが記録されているはずです
ログファイルは、MySQLがデータを保存しているディレクトリに
作成されます

「・」 というのは、SJIS コードで 0x8145
CR = 0x0D , LF = 0x0A
\ = 0x5C
n = 0x6E , r = 0x72
で、どう組み合わせても、「・」 ができないです
なにか変な文字が前後に入力されているか
漢字コードが一致していないか

-- 
 村上 毅  takeshi@xxxxxxxxxx

[前][次][番号順一覧][スレッド一覧]

      1594 2000-02-16 10:49 ["Isamu Narimatsu" <i] MS-ACCESS で入力した改行コードは LF に変換されるか?
->    1602 2000-02-17 15:19 ┗[<takeshi@xxxxxxxxxx>]