mysql:13912
From: "fujita" <"fujita" <t-fujita@xxxxxxxxxx>>
Date: Wed, 25 Apr 2007 16:39:55 +0900
Subject: [mysql 13912] Re: Access2002+MyODBCでエラー
こんにちは。藤田です。 > myodbcから(というか上位アプリのaccessなど含めてですが)は、 > 「SHOW VARIABLES LIKE 'char%';」 > は実行できないのでしょうか? 私の環境で試してみました。 ただリンクテーブルだとできませんので、パススルークエリで行ってみました結果です。 環境:WindowsXP SP2 Access2003 MyODBC3.51.14 Variable_name :Value character_set_client :sjis character_set_connection :sjis character_set_database :sjis character_set_filesystem :binary character_set_results :sjis character_set_server :sjis character_set_system :utf8 character_sets_dir :D:\MySQL\share\charsets\ また、 > あと、デバッグ用に myodbcd.dll なんていうのがあるようですね。 > 詳細ログ取れるようなので、何かヒントになるのかも。。。 に該当するか不明ですが、DSN設定のAdvanced->Debugの Trace Driver Calls To myodbc.log Save Queries to myodbc.sql にチェックをつけて試してみました。 サーバー側 CREATE TABLE `test`.`testtbl` ( `field1` varchar(10) NOT NULL, `field2` varchar(20) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=sjis; クライアント側(WindowsXP SP2 Access2003 MyODBC3.51.14) で上記に対してリンクテーブルを作成し、テーブルを開いて 1行目:「テスト」「データ」を入力→OK 2行目:「十」「データ」を入力→NG その結果,下記のようにmyodbc.sqlに記録されていました。 -- Query logging -- -- Driver name: MySQL ODBC 3.51 Driver Version: 03.51.14 -- Timestamp: 070425 16:16:58 SELECT Config, nValue FROM MSysConf; SHOW TABLES FROM `mysql` like '%'; SHOW KEYS FROM `testtbl`; SELECT `testtbl`.`field1`,`testtbl`.`field2` FROM `testtbl` ; INSERT INTO `testtbl` (`field1`,`field2`) VALUES ('テスト','データ'); COMMIT; SELECT `field1`,`field2` FROM `testtbl` WHERE `field1` = 'テスト' AND `field2` = 'データ'; SELECT `field1`,`field2` FROM `testtbl` WHERE `field1` = 'テスト' AND `field2` = 'データ'; SELECT `field1`,`field2` FROM `testtbl` WHERE `field1` = 'テスト' AND `field2` = 'データ'; SELECT `field1`,`field2` FROM `testtbl` WHERE `field1` = 'テスト' AND `field2` = 'データ'; SELECT `field1`,`field2` FROM `testtbl` WHERE `field1` = 'テスト' AND `field2` = 'データ'; SELECT `field1`,`field2` FROM `testtbl` WHERE `field1` = 'テスト' AND `field2` = 'データ'; INSERT INTO `testtbl` (`field1`,`field2`) VALUES ('十\','データ'); ROLLBACK; SELECT `field1`,`field2` FROM `testtbl` WHERE `field1` = 'テスト' AND `field2` = 'データ'; SELECT `field1`,`field2` FROM `testtbl` WHERE `field1` = 'テスト' AND `field2` = 'データ'; SELECT `field1`,`field2` FROM `testtbl` WHERE `field1` = 'テスト' AND `field2` = 'データ'; SELECT `field1`,`field2` FROM `testtbl` WHERE `field1` = 'テスト' AND `field2` = 'データ'; SELECT `field1`,`field2` FROM `testtbl` WHERE `field1` = 'テスト' AND `field2` = 'データ'; ログはmyodbc.logに記録されるはずなんですが見つかりませんでした。 > SET NAMES binaly > しておいて、エスケープは自分でやってしまう。 ADO等コードで書けるのでしたらこれでOKなんですが、 リンクテーブルだと何も手出しできないので・・・
13886 2007-04-24 06:05 [<t-fujita@xxxxxxxxxx] Re: Access2002+MyODBCでエラー 13890 2007-04-24 11:58 ┗[ezaki <kjc_post@xxxx] 13891 2007-04-24 13:21 ┣["fujita" <t-fujita@x] 13897 2007-04-24 19:58 ┃┣[ezaki <kjc_post@xxxx] 13910 2007-04-25 15:24 ┃┗[goungoun <gounx2@xxx] -> 13912 2007-04-25 16:39 ┃ ┗["fujita" <t-fujita@x] 13895 2007-04-24 16:22 ┗["T.Hirotsu" <hirotsu] 13898 2007-04-24 20:09 ┗[ezaki <kjc_post@xxxx] 13899 2007-04-24 20:58 ┗["fujita" <t-fujita@x] 13901 2007-04-25 09:44 ┗[ezaki <kjc_post@xxxx] 13902 2007-04-25 10:20 ┣[MITSUGI kiyoshi <kiy] 13904 2007-04-25 11:22 ┃┗[ezaki <kjc_post@xxxx] 13908 2007-04-25 11:44 ┃ ┗[MITSUGI kiyoshi <kiy] 13909 2007-04-25 12:33 ┃ ┗[YuGo <yu.gotou@xxxxx] 13903 2007-04-25 10:40 ┗["T.Hirotsu" <hirotsu] 13907 2007-04-25 11:34 ┗[ezaki <kjc_post@xxxx]