mysql:5007
From: "MIYATSU Kazunari" <"MIYATSU Kazunari" <mid@xxxxxxxxxx>>
Date: Tue, 22 Jan 2002 16:15:19 +0900
Subject: [mysql 05007] Re: Access2000 でのデータ更新
宮津@長野です 手元の環境 MySQL:3.23.41-nt(Win32) MyODBC:MySQL-EUC 2.50.29.00 MS ACCESS:2000(9.0.4402 SR-1) Windows 2000 SP2 でMyODBCを Don't optimize column width Return matching row Ignore # in #.table Use Manager cursors (exp) Don't use setlocale Change BIGINT columns to INT のオプション付けと適切なホスト、データベース、ユーザ名、パスワードでシステム DSNに追加した後ACCESS2000からテーブルをリンクしていじってみました。 フィールド構成を変えてはリンクしなおしてみると、timestamp型フィールドは付加 しなくても問題ありませんでしたが、DATE型のフィールドを追加して再リンクした時 に障害の一端が見えた気がしました。 既存のレコードが存在する状態でDATE型フィールドを付加すると"0000-00-00"が挿入 されますが、ACCESS上からは空フィールドに見えます。この状態ではDATEフィールド 以外も更新不可になりました。ODBCのトレースログを見るとUPDATE構文のWhere条件 にDATE=""(ACCESSでの見え方)が入れられているようなので、他ユーザが変更した・ ・・というよりは該当するレコードが存在しない・・・というエラーが出る方が適切 なのだと思います。 フィールド型をあれこれ変えてみると、このACCESS側での値の解釈とMySQLでの値の 差違が問題の本質なのではないかと思います。 auto increment属性を付けたフィールドに何も値を設定しないでデータ挿入すると "#DELETED"表示になるのも根底は同じ問題と思います。 Uniqueフィールドが存在する場合には、それだけをWhereに指定するなどODBCドライ バ側に改変を加える方が良いかもしれません。
4984 2002-01-19 11:51 ["T.Yamamoto" <yamamo] Access2000 でのデータ更新 -> 5007 2002-01-22 16:15 ┗["MIYATSU Kazunari" <] 5008 2002-01-22 17:25 ┗["T.Yamamoto" <yamamo] 5009 2002-01-22 18:04 ┣["MIYATSU Kazunari" <] 5012 2002-01-22 18:55 ┃┣["T.Yamamoto" <yamamo] 5013 2002-01-22 19:24 ┃┃┣[Daiju Azuma <daiju_a] 5018 2002-01-23 09:24 ┃┃┗["MIYATSU Kazunari" <] 5015 2002-01-22 22:28 ┃┗[とみたまさひろ <tomm] 5017 2002-01-23 08:23 ┃ ┗["MIYATSU Kazunari" <] 5010 2002-01-22 18:20 ┣[Daiju Azuma <daiju_a] 5014 2002-01-22 20:53 ┣[楠吉彦 <moredebu@xxx] 5016 2002-01-23 01:55 ┗[masahiro kawata <mas] 5019 2002-01-23 14:36 ┗["T.Yamamoto" <yamamo] 5020 2002-01-23 21:08 ┗["T.Yamamoto" <yamamo] 5027 2002-01-24 18:02 ┗["T.Yamamoto" <yamamo] 5028 2002-01-24 20:44 ┗[tateyan <tateyan@xxx] 5029 2002-01-25 11:54 ┗["T.Yamamoto" <yamamo]